Excel VBA ワークシートのグラフの大きさ(高さ、幅)を変更したり、セルに合わせる-Height、Width

Excel VBAでワークシートにあるグラフの大きさ(高さや幅)を設定する記録です。

VBAグラフ大きさ

下図はExcel2016です。

 

< スポンサーリンク >

 

構文

式.Height

オブジェクトの高さをポイント単位で表す倍精度浮動小数点型(Double)の値を取得、または設定します。

 

式.Width

オブジェクトの幅をポイント単位で表す倍精度浮動小数点型(Double)の値を取得、または設定します。

 

アクティブシートの1つ目のグラフの高さと幅を200に設定してみます。

Sub test()
    With ActiveSheet.ChartObjects(1)
        .Height = 200
        .Width = 200
    End With
End Sub

VBAグラフ大きさ

VBAグラフ大きさ

 

アクティブシートの2つ目のグラフの高さと幅を1つ目のグラフに合わせてみます。

Sub test()
    With ActiveSheet
        .ChartObjects(2).Height = ChartObjects(1).Height
        .ChartObjects(2).Width = ChartObjects(1).Width
    End With
End Sub

VBAグラフ大きさ

VBAグラフ大きさ

VBAグラフ大きさ

 

グラフの大きさをセルの大きさにきっちり合わせる

アクティブシートの全てのグラフの高さを1~11行の高さと同じに、幅をE~H列と同じ幅にし、グラフの左上隅のセルと同じ位置にしてみます。

Sub test()
    Dim h As Variant
    Dim w As Variant
    Dim i As Long

    With ActiveSheet
        h = .Rows("1:11").Height
        w = .Columns("E:H").Width
        For i = 1 To .ChartObjects.Count
            .ChartObjects(i).Top = .ChartObjects(i).TopLeftCell.Top
            .ChartObjects(i).Left = .ChartObjects(i).TopLeftCell.Left
            ChartObjects(i).Height = h
            .ChartObjects(i).Width = w
        Next i
    End With
End Sub

VBAグラフ大きさ

VBAグラフ大きさ

VBAグラフ大きさ

 

< スポンサーリンク >



サブコンテンツ

このページの先頭へ