忍者ブログ

エクセルで行の高さを1行分バッファをもって自動調整する

2020年09月24日
前回の記事では、エクセルの見切れ対策を話題にしましたが、
そもそも自動調整するマクロを書いた人がいるんじゃないかと思い、
検索。やっぱりいた!

http://moritahyoukeisan.com/excel48/pagev10/pagev10.htm

行の高さを自動調整+15ポイント(1行分)に設定する。


個人的な使い勝手を考慮して修正を加えました。

単にInputBoxを使わずに、Application.InputBoxを使うと
文字種制限をかけられるのは参考になった。

選択行だけやるか、シート全体をやるかは悩ましいところ。。。
以下ソース。



Sub 行の高さを自動調節する()
'http://moritahyoukeisan.com/excel48/pagev10/pagev10.htm
    Dim res As Integer
    res = MsgBox("選択行の高さを自動調整+15ポイントに設定します。よろしいですか?", vbYesNoCancel, "作業前確認")
    
    Dim RHplus As Integer   '各行に追加する高さ インプットボックスの値
    If res = vbYes Then
        RHplus = 15
    ElseIf res = vbNo Then '不服があるならインプットボックスに追加する高さを入力します
        RHplus = Application.InputBox(prompt:="追加する高さを指定してください", Title:="追加する高さの指定", Default:=15, Type:=1)
    Else 'If res = vbCancel Then
        Exit Sub
    End If
         
    Dim i As Long
    For i = 1 To Cells(1, 1).SpecialCells(xlLastCell).Row
        Rows(i).AutoFit '行の高さを自動調節
        Rows(i).RowHeight = Rows(i).RowHeight + RHplus  '自動調節+RHplusに設定
    Next i
'    For i = Selection(1).Row To Selection(Selection.Count).Row
'        Rows(i).AutoFit '行の高さを自動調節
'        Rows(i).RowHeight = Rows(i).RowHeight + RHplus  '自動調節+RHplusに設定
'    Next i
    
End Sub


PR
Comment
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字