Excel VBA ワークシートのグラフをセルに合わせて移動やサイズを変更させない-Placement

Excel VBAでワークシートにあるグラフをセルが移動したり、サイズが変わると、グラフを一緒に移動したり、サイズが変わります。

セルに合わせて、移動したり、サイズが変わらないようにする設定の記録です。

移動したり、サイズが変わらないようにするには「Placement」プロパティを使います。

< スポンサーリンク >





「Placement」プロパティ構文

式.Placement

オブジェクトがその下のセルにどのように接続されるかを表す、xlplacement定数を含むバリアント型(Variant)の値を取得、または設定します。

【xlplacement】
xlFreeFloating=オブジェクトは自由に動きます
xlMove=オブジェクトはセルと共に移動します
xlMoveAndSize=オブジェクトはセルと共に移動し、セルに合わせてサイズが変更されます

 

セルに合わせての移動・サイズの変更を設定する例

移動やサイズを変更する

アクティブシートの1つ目のグラフを「セルに合わせて移動やサイズ変更をする」に設定する。

Sub test()
    ActiveSheet.ChartObjects(1).Placement = xlMoveAndSize
End Sub

VBAグラフ移動サイズ

VBAグラフ移動サイズ

 

移動やサイズを変更しない

アクティブシートの1つ目のグラフを「セルに合わせて移動するがサイズ変更はしない」に設定する。

Sub test()
    ActiveSheet.ChartObjects(1).Placement =  xlMove
End Sub

VBAグラフ移動サイズ

VBAグラフ移動サイズ

 

グラフを指定して移動やサイズを設定する

アクティブシートの1つ目のグラフを「セルに合わせて移動やサイズ変更をしない」に設定する。

Sub test()
    ActiveSheet.ChartObjects(1).Placement = xlFreeFloating
End Sub

VBAグラフ移動サイズ

VBAグラフ移動サイズ

 

すべてのグラフの移動やサイズを設定する

アクティブシートのすべてのグラフを「セルに合わせて移動するがサイズ変更はしない」に設定する。

Sub test()
    Dim i As Long

    With ActiveSheet
        For i = 1 To .ChartObjects.Count
            .ChartObjects(i).Placement = xlMove
        Next i
    End With
End Sub

VBAグラフ移動サイズ

VBAグラフ移動サイズ

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします