対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016
「vba グラフ プロパティ セルにあわせて移動やサイズ変更をしない」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
ワークシート上に作成されたグラフオブジェクトは、セルに合わせて移動やサイズ変更するかどうかを設定できます。
この設定変更をExcel VBA(Visual Basic for Applications)で行うには、どのようなコードを書けばいいのかを探していらしたのでしょう。
グラフオブジェクトをセルに合わせて移動やサイズ変更をしないようにするサンプルマクロ
以下のようなSubプロシージャで、アクティブシート上のすべてのグラフオブジェクトを、セルに合わせて移動やサイズ変更をしないようにできます。
Sub グラフオブジェクトをセルに合わせて移動やサイズ変更をしないように()
Dim cho As ChartObject
For Each cho In ActiveSheet.ChartObjects
cho.Placement = xlFreeFloating
Next
End Sub
Dim cho As ChartObject
For Each cho In ActiveSheet.ChartObjects
cho.Placement = xlFreeFloating
Next
End Sub
サンプルマクロで利用しているオブジェクト式について
ChartObjectのPlacementプロパティで、セルに合わせた移動やサイズ変更を、取得・設定できます。
ChartObject.Placementプロパティには、XlPlacement列挙に定義されている定数を指定でき、
定数・xlFreeFloatingで
「セルに合わせて移動やサイズ変更をしない」
定数・xlMoveで
「セルに合わせて移動するがサイズ変更はしない」
定数・xlMoveAndSizeで
「セルに合わせて移動やサイズ変更をする」
にそれぞれ設定できます。
最終更新日時:2022-06-24 14:25
[スポンサードリンク]
- Newer:VBAで格子罫線を引く-Bordersコレクション
- Older:Excel VBAのColumnsとColumnの違い
Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフをセルに合わせて移動やサイズ変更をしないように