
Excel VBAでワークシートにあるグラフの左上の位置を取得、設定する記録です。
上端からの距離を取得するには「top」プロパティを、左端からの距離を取得するには「Left」プロパティを、グラフの左上隅にあるセルを取得するには「TopLeftCelltop」プロパティを使います。
< スポンサーリンク >
「top」「Left」「TopLeftCelltop」プロパティ構文
式.top
行1の上端からグラフの上端までの距離をポイント単位で表す倍精度浮動小数点型(Double)の値を取得、または設定します。
式.Left
列Aの左端からグラフの左端までの距離をポイント単位で表す倍精度浮動小数点型(Double)の値を取得、または設定します。
式.TopLeftCelltop
表すRangeオブジェクトを返します。読み取り専用です。
VBAでグラフの左上を取得、設定する例
アクティブシートの1つ目のグラフの上端からワークシートの上端の距離のポイントをメッセージで表示します。
Sub test()
MsgBox ActiveSheet.ChartObjects(1).Top
End Sub
アクティブシートの1つ目のグラフの左端からワークシートの左端の距離のポイントをメッセージで表示します。
Sub test()
MsgBox ActiveSheet.ChartObjects(1).Left
End Sub
アクティブシートの1つ目のグラフの左上隅にあるセル番地をメッセージで表示します。
Sub test()
MsgBox ActiveSheet.ChartObjects(1).TopLeftCell.Address
End Sub
アクティブシートの1つ目のグラフをワークシートの上端から100ポイント、左端から100ポイントの位置に設定します。
Sub test()
With ActiveSheet
.ChartObjects(1).Top = 100
.ChartObjects(1).Left = 100
End With
End Sub
アクティブシートの全てのグラフを、グラフの左上隅にかかっているセルの左上に位置を合わせます。
Sub test()
Dim i As Long
With ActiveSheet
For i = 1 To .ChartObjects.Count
.ChartObjects(i).Top = .ChartObjects(i).TopLeftCell.Top
.ChartObjects(i).Left = .ChartObjects(i).TopLeftCell.Left
Next i
End With
End Sub
こんな記事も書いています