Excel VBA 行の高さを設定する

スポンサーリンク

セルの行の高さに関するプロパティとメソッド

プロパティ 内容
RowHeight
【ロウハイト】
指定したセル範囲の行の高さを取得または設定します。
UseStandardHeight
【ユーズスタンダードハイト】
指定したセル範囲の行高さを標準の幅に設定します。

メソッド 内容
AutoFit
【オートフィット】
列の幅や行の高さをセルの文字列に合わせて調整します。

RowHeight【ロウハイト】プロパティ

指定したセル範囲の行高さを取得または設定するには、Range【レンジ】オブジェクトのRowHeight【ロウハイト】プロパティを使用します。指定した範囲の行の高さを取得して他の行に設定したり、複数の行をまとめて同じ高さに揃えたりするときに使用します。戻り値の単位はポイント(1ポイントは約0.35ミリ)です。

RowHeight【ロウハイト】プロパティの書式と設定値の説明

【取得】
オブジェクト.RowHeight
【設定】
オブジェクト.RowHeight = 設定値

  • オブジェクト
    行の高さを取得または設定するセル範囲を、Range【レンジ】オブジェクトで指定します。行高さを取得する場合は単一のセルまたは行を指定します。セル範囲または行範囲を指定した場合は、セル範囲または行範囲の最初のセルの高さが返ります。
  • 設定値
    行の高さをポイント単位(1ポイントは約0.35ミリ)で指定します。

行の高さを取得するコード例

Sub 高さ取得()
Dim 高さ As Single
高さ = Range("A1").RowHeight
MsgBox 高さ
End Sub

実行結果

行の高さを設定するコード例

Sub 高さ設定()
Rows("1:2").RowHeight = 40
End Sub

実行結果

UseStandardHeight【ユーズスタンダードハイト】

指定したセル範囲の行の高さを標準の高さに戻すには、Range【レンジ】オブジェクトのUseStandardHeight【ユーズスタンダードハイト】プロパティを使用します。値の取得および設定が可能です。値の取得の戻り値はブール型(Boolean)で、指定範囲が標準高さの場合は「True」標準高さではない場合は「False」が返ります。

UseStandardHeight【ユーズスタンダードハイト】プロパティの書式と設定値の説明

【取得】
オブジェクト.UseStandardHeight
【設定】
オブジェクト.UseStandardHeight = 設定値

  • オブジェクト
    値を取得する場合は調査する行や行範囲。設定する場合は標準高さに戻す行や行範囲を、Range【レンジ】オブジェクトで指定します。
  • 設定値
    標準高さに戻す場合は「True」を設定します。

1行目の高さが標準高さか確認するコードと解説

Sub 高確認()
Dim 標準高 As Boolean
標準高 = Rows(1).UseStandardHeight
If 標準高 Then
MsgBox "標準高です。"
Else
MsgBox "標準高ではありません。"
End If
End Sub
2行目【Dim 標準高 As Boolean】
Dim【ディム】ステートメントを使用して変数「標準高」を宣言し、As【アズ】キーワードを使用して変数のデータ型をブール型(Boolean)に指定します。


3行目【標準高 = Rows(1).UseStandardHeight】
行の高さが標準高かどうかをブール型(TrueかFalse)で返す、Range【レンジ】オブジェクトのUseStandardHeight【ユーズスタンダードハイト】プロパティを使用して1行目が標準高さかどうか判定し、戻り値をブール型の変数「標準高」に代入します。オブジェクトはRows【ロウズ】プロパティで参照した、セルの行を表すRange【レンジ】オブジェクトを指定します。


4~5行目【If 標準高 Then
MsgBox “標準高です。”】

Ifステートメントを使用して条件分岐します。変数「標準高」の値が満たすとき(True)のときを定義してMsgBox【メッセージボックス】関数を使用し、標準高であることをユーザーに伝えます。


6~7行目【Else
MsgBox “標準高ではありません。”】

Else【エルズ】キーワードを使用して条件を満たさなかったとき、つまり変数「標準高」の値が「False」だったときの処理を定義します。MsgBox関数を使用し、標準高ではないことをユーザーに伝えます。


実行結果


すべての行の高さを標準高に戻すコード例

Sub 標準高()
Cells.UseStandardHeight = True
MsgBox "すべての行の高さを標準値にしました。"
End Sub

AutoFit【オートフィット】メソッド

行の高さをセルに表示されている値に合わせて自動調整するには、Range【レンジ】オブジェクトのAutoFit【オートフィット】メソッドを使用します。行の高さは、行内に入力されている一番大きいフォントに合わせて調整されます。

AutoFit【オートフィット】メソッドの書式と設定値の説明

オブジェクト.AutoFit

  • オブジェクト
    Rows【ロウズ】プロパティを使用してセルの行を表すRange【レンジ】オブジェクトを取得し、自動調整する行を指定します。

すべての行の高さを自動調整するコード例

Sub オートフィット()
Rows.AutoFit
End Sub

1~3行目の高さを自動調整するコード例

Sub オートフィット2()
Rows("1:3").AutoFit
End Sub

以上で、行の高さを設定する方法についての解説を終了します。ありがとうございます。

スポンサーリンク

関連記事・広告