大体でIT
大体でIT
Excel VBAで、グラフの削除と初期化をする方法について、ご紹介します。グラフの削除は、「.Delete」で、初期化の場合は、「.ChartArea.ClearContents」を使います。グラフを「削除」する場合は、「グラフ」を操作して、「初期化」の場合は、「チャート」を操作です。用途に合わせて使い分けていきましょう。
この記事では、グラフの削除と初期化する方法について、ご紹介します。
グラフの初期化は、「.ChartArea.ClearContents」でできます。
グラフを「削除」する場合は、「グラフ」を操作します。
グラフの「初期化」の場合は、「チャート」を操作です。
では、グラフの削除と初期化する方法について、解説していきます。
グラフの削除と初期化をするVBAコードについて、まとめています。
VBAコードだけを確認したい場合に、ご活用ください。
'グラフを削除
ActiveChart.Parent.Delete '選択する場合
ActiveSheet.ChartObjects(1).Delete '指定する場合
'グラフを初期化
ActiveChart.ChartArea.ClearContents '選択する場合
ActiveSheet.ChartObjects(1).Chart.ChartArea.ClearContents '指定する場合
「グラフ」→「チャート」の順番
グラフの「削除」をする場合は、「グラフ」の部分を操作します。
グラフの「初期化」をする場合は、「チャート」の部分を操作です。
グラフを選択すると、「チャート」の部分が選択されます。
グラフの「削除」の場合は、「グラフ」の部分を操作する必要があるので、「ActiveChart」の「親要素」を指定して、「ActiveChart.Parent」を使います。
グラフの「初期化」の場合は、選択したチャートを使うので、「ActiveChart」を使います。
グラフを「選択」する場合
選択したグラフを操作する場合に、「削除」したいときは、「ActiveChart.Parent」を操作します。
「初期化」の場合は、チャートの部分を操作するので、「ActiveChart」を操作します。
グラフを指定する場合で、「削除」したい場合は、「ChartObjects(1)」を使います。
グラフの「初期化」の場合は、「ChartObjects(1).Chart」を操作します。
グラフを「指定」する場合
「1つ目のグラフ」という意味で、「ChartObjects(1)」となります。
2つ目のグラフの場合は、「ChartObjects(2)」とします。
使うVBAコードは、「ActiveChart.Parent.Delete」です。
Sub TEST1()
'グラフを削除(選択の場合)
ActiveChart.Parent.Delete
End Sub
グラフを選択する
「選択したグラフ」を削除できた
使うVBAコードは、「ActiveSheet.ChartObjects(1).Delete」です。
Sub TEST2()
'グラフを削除(指定する場合)
ActiveSheet.ChartObjects(1).Delete
End Sub
グラフを用意
「指定したグラフ」を削除
「For」を使う方法と、「For Each」を使う方法があります。
オブジェクトのイメージがつくのであれば、「For Each」の方がコードも短くて簡単です。
「For」を使う場合で、シート内のグラフをすべて削除してみます。
グラフを削除すると、「番号」が一つずつずれてしまうので、「最後の番号」から「1番目」というように、ループします。
Sub TEST3()
'グラフをループ
For i = ActiveSheet.ChartObjects.Count To 1 Step -1
ActiveSheet.ChartObjects(i).Delete '削除
Next
End Sub
「複数のグラフ」を用意
「For」を使って削除
「For」を使ってシート内のグラフをすべて削除できました。
「ForEach」を使って、シート内のグラフをすべて削除してみます。
Sub TEST4()
'グラフをループ
For Each A In ActiveSheet.ChartObjects
A.Delete '削除
Next
End Sub
「複数のグラフ」を用意
「For Each」を使って削除
「For Each」を使ってシート内のグラフをすべて削除できました。
グラフの初期化は、「.ChartArea.ClearContents」を使います。
「チャート」を操作したいので、「ActiveChart」を使います。
Sub TEST5()
'グラフを初期化(選択する場合)
ActiveChart.ChartArea.ClearContents
End Sub
グラフを選択する
「選択したグラフ」を初期化できた
「チャート」を操作したいので、「ChartObjects(1).Chart」を使います。
Sub TEST6()
'グラフを初期化(指定する場合)
ActiveSheet.ChartObjects(1).Chart.ChartArea.ClearContents
End Sub
グラフを用意
「指定したグラフ」を初期化できた
この記事では、グラフの削除と初期化する方法について、ご紹介しました。
グラフの初期化は、「.ChartArea.ClearContents」でできます。
グラフを「削除」する場合は、「グラフ」を操作します。
グラフの「初期化」の場合は、「チャート」を操作です。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。