#2です。 行の高さは1行の高さの行数倍でよいはずなので、 文字列中の改行の個数(末尾は除く)を数えれば 1行しかないと分かっている行の高さに改行の 個数を掛けて求められます。 最後の改行を抜いたのは最下段に空行ができる ことを防ぐためですが、それも必要ならば、その 処理は飛ばしてください。 プログラム例 Dim 末尾改行削除 As Object Dim 改行カウント As Object Dim 単一行の高さ As Double Function 行高算出(ByVal 文字列 As String) As Double If 改行カウント Is Nothing Then '正規表現が作成されていない場合は作成する Set 末尾改行削除 = CreateObject("VBScript.RegExp") 末尾改行削除.Global = False 末尾改行削除.Pattern = "(\r{0
こんにちは。わたしの環境は Excel2000ですが、 標準の機能で自動調整はできないと思います。 マクロで実現するなら以下になります。 Sub Macro1() Dim rStart As Long Dim rEnd As Long Dim lHeight As Long Dim rRng As Range Set rRng = Selection With rRng If Not .MergeCells Or .Rows.Count = 1 Then Exit Sub .MergeCells = False With .Rows(1) rStart = .Row .EntireRow.AutoFit lHeight = .Height End With rEnd = rStart + .Rows.Count - 1 .MergeCells = True Range(Rows(rStar
エクセルで表を作成します。その際、標準の状態(行の高さ12.75、列幅8.43)では、文字を入力すると、セルぎりぎりとなってしまい、やや見にくいこととなるため、手動である程度広げ、余裕を持たせています。 しかし、この方法では追加でセルの中にデータを入力した場合には再度、また手動で広げなおす必要があります。また、各行又は列の余裕幅を目算で調整することは煩雑です。 そこで、当初の設定か何かで、データとセル範囲の上下左右に自動的に余裕幅を設けるような設定はできないでしょうか。特に、追加でデータが入力された場合には、その余裕幅を持たせるように行又は列が広がるような仕組みであると助かります。 宜しく御願いします。
EXCELのVBAで質問です。 ファイルから文章を取り出し、 別のファイルの指定された位置に その文章をはめ込む作業を行っています。 文章を入れるセルは結合されたセルで、 折り返して全体を表示する設定にしてあります。 セルの幅は固定、フォントはプロポーショナルフォントを使用します。 (英文の場合半角で入力されるので) この時、文章の長さに合わせて、 文字が切れることなく印刷されるように マクロでセルの高さを設定したいと考えています。 そういう方法はありますでしょうか? あれば教えていただきたいと思います。 文章の長さは数文字~数百文字とまちまちで、 あらかじめ適当な高さを取るわけにはいきません (はめ込む文章は1つではなく、複数あり、 はめ込む先も複数行あるため、 1つ1つのセルの高さを多めに取ると、 文章が短い場合にやたら空白ができてしまうため) 宜しくお願いいたします。
こんにちは。わたしの環境は Excel2000ですが、 標準の機能で自動調整はできないと思います。 マクロで実現するなら以下になります。 Sub Macro1() Dim rStart As Long Dim rEnd As Long Dim lHeight As Long Dim rRng As Range Set rRng = Selection With rRng If Not .MergeCells Or .Rows.Count = 1 Then Exit Sub .MergeCells = False With .Rows(1) rStart = .Row .EntireRow.AutoFit lHeight = .Height End With rEnd = rStart + .Rows.Count - 1 .MergeCells = True Range(Rows(rStar
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く