Sub TEST1()
Charts.Add 'グラフシートを追加'グラフを設定する
ActiveChart.ChartType = xlColumnClustered '集合縦棒グラフにする
ActiveChart.SetSourceData Range("A1").CurrentRegion '参照範囲を設定
End Sub
Sub TEST2()
Charts.Add 'グラフシートを追加'グラフを設定する
ActiveChart.ChartType = xlColumnClustered '集合縦棒グラフにする
ActiveChart.SetSourceData Worksheets("元データ").Range("A1").CurrentRegion '参照範囲を設定
End Sub
元データを用意しておきます。
元データ
では、VBAコードを実行してみます。
グラフシートを追加してグラフを作成できた
VBAでグラフシートを追加してグラフを作成できました
既存のグラフシートに棒グラフを作成する
既存のグラフシートに、棒グラフを作成してみます。
手順としては、
グラフシートをアクティブにする
グラフの種類を設定
グラフの参照範囲を設定する
という感じです。
Sub TEST3()
Charts("グラフ1").Activate 'グラフシートをアクティブにする'グラフを設定
ActiveChart.ChartType = xlColumnClustered '集合縦棒にする
ActiveChart.SetSourceData Worksheets("元データ").Range("A1").CurrentRegion '参照範囲を設定
End Sub
グラフシートを作成しておきます。
グラフシートが既にある場合
では、VBAコードを実行してみます。
既存のグラフシートにグラフを作成できた
VBAで既存のグラフシートにグラフを作成できました
VBAで別のワークシートにグラフを作成する
VBAで「別のワークシート」にグラフを作成する、というのをやってみます。
参照範囲を「Range()」だけにするとグラフを作成できない
先ほどと同じように、参照範囲を「Range()」だけにするとグラフを作成できないです。
Sub TEST4()
Worksheets.Add 'ワークシートを追加'グラフを挿入する
ActiveSheet.Shapes.AddChart2.Select 'グラフを挿入
ActiveChart.ChartType = xlColumnClustered '集合縦棒
ActiveChart.SetSourceData Range("A1").CurrentRegion '参照範囲を設定
End Sub
Sub TEST5()
Worksheets.Add 'ワークシートを追加'グラフを挿入する
ActiveSheet.Shapes.AddChart2.Select 'グラフを挿入
ActiveChart.ChartType = xlColumnClustered '集合縦棒にする
ActiveChart.SetSourceData Worksheets("元データ").Range("A1").CurrentRegion '参照範囲を設定
End Sub
Sub TEST6()
Worksheets("Sheet1").Activate 'Sheet1をアクティブにする'グラフを挿入する
ActiveSheet.Shapes.AddChart2.Select 'グラフを挿入
ActiveChart.ChartType = xlColumnClustered '集合縦棒にする
ActiveChart.SetSourceData Worksheets("元データ").Range("A1").CurrentRegion '参照範囲を設定
End Sub