Heightプロパティ解説(Excel VBA)

Excel VBAのHeightプロパティについて

Excel VBAのHeightプロパティは、指定したオブジェクトの高さを返す読み取り専用のプロパティです。このプロパティは、様々なオブジェクトで使用可能で、その使用法はオブジェクトの種類により異なります。

1. 使用方法

Heightプロパティは以下のように使用します。


Dim rng As Range
Set rng = ActiveSheet.Range("A1:B2")
Debug.Print rng.Height

上記のコードでは、ActiveSheetのRange(“A1:B2”)の範囲をrngという変数にセットし、その高さをVBAのImmediateウィンドウに出力しています。

また、以下のようにShapeオブジェクトやUserFormなどでも使用可能です。


Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
Debug.Print shp.Height

上記のコードでは、ActiveSheetの最初のShapeオブジェクトの高さをImmediateウィンドウに出力しています。

2. 注意点

Heightプロパティは読み取り専用のプロパティであり、オブジェクトの高さを設定するために使用することはできません。行や列の高さを設定する場合は、それぞれRowHeightプロパティやColumnWidthプロパティを使用します。

3. Heightプロパティを使用したサンプルコード

3.1 範囲の高さを取得する


Sub GetRangeHeight()
    Dim rng As Range
    Set rng = ActiveSheet.Range("A1:B2")
    Debug.Print "The height of the range is " & rng.Height & " points."
End Sub

上記のサブプロシージャでは、アクティブシートの”A1:B2″の範囲の高さを計算し、イミディエイトウィンドウにその結果を出力しています。

3.2 シェイプの高さを取得する


Sub GetShapeHeight()
    Dim shp As Shape
    Set shp = ActiveSheet.Shapes(1)
    Debug.Print "The height of the shape is " & shp.Height & " points."
End Sub

上記のサブプロシージャでは、アクティブシートの最初のShapeオブジェクトの高さを取得し、イミディエイトウィンドウにその結果を出力しています。

4. まとめ

Heightプロパティは、指定したオブジェクトの高さを取得するために使用します。このプロパティは読み取り専用であり、オブジェクトの高さを設定するためには使用できません。