Sub TEST1()
'参照範囲を設定
ActiveSheet.ChartObjects(1).Chart.SetSourceData Range("A1:C3")
'「横方向のデータ」を系列にする
ActiveSheet.ChartObjects(1).Chart.PlotBy = xlColumns
End Sub
列方向のデータを系列としておきたいので、「.PlotBy = xlColumns」としています。
グラフを用意しておきます。
元グラフ
では、VBAコードを実行してみます。
「参照範囲」を変更できた
「参照範囲」を変更できました。
データを追加してグラフに反映してみる
データを追加してグラフに反映してみます。
データを追加する
「X軸」のデータを追加してみます。
元データにデータを追加
元データにデータを追加しました。
この「追加したデータ」を「SetSourceData」を使って反映してみます。
参照範囲を変更して追加データを反映
参照範囲を変更して追加データを反映してみます。
セル範囲を指定する際は、「CurrentRegion」を使うと便利です。
Sub TEST2()
'参照範囲を設定
ActiveSheet.ChartObjects(1).Chart.SetSourceData Range("A1").CurrentRegion
'「横方向のデータ」を系列にする
ActiveSheet.ChartObjects(1).Chart.PlotBy = xlColumns
End Sub
列方向のデータを系列としていので、「.PlotBy = xlColumns」としています。
では、VBAコードを実行してみます。
「追加データ」を反映できた
VBAで「追加データ」を反映できました。
系列のデータを追加してグラフに反映してみる
系列のデータを追加してグラフに反映してみます。
「系列のデータ」も反映することができます。
系列のデータを追加
系列のデータを追加します。
系列なので、列方向にデータを追加します。
「系列」のデータを追加
「系列」のデータを追加しました。
参照範囲を変更してみる
参照範囲を変更して、系列のデータを追加してみます。
Sub TEST3()
'参照範囲を設定
ActiveSheet.ChartObjects(1).Chart.SetSourceData Range("A1").CurrentRegion
'「横方向のデータ」を系列にする
ActiveSheet.ChartObjects(1).Chart.PlotBy = xlColumns
End Sub
Sub TEST5()
'参照範囲を設定
ActiveSheet.ChartObjects(1).Chart.SetSourceData Union(Range("A1:B4"), Range("D1:D4"))
'「横方向のデータ」を系列にする
ActiveSheet.ChartObjects(1).Chart.PlotBy = xlColumns
End Sub