Excelは、ワークシートのデータからグラフを作成するのに非常に便利です。ワークシートのデータを使用せずに、VBAから直接グラフを作成する場合はどうなりますか?これを行うには、Excelを「だまして」、ワークシートの情報を処理していると考えてから、独自の情報を提供します。

次のマクロは、この概念を示しています。

Sub MakeChart()

'Add a new chart     Charts.Add

'Set the dummy data range for the chart     ActiveChart.SetSourceData Sheets("Sheet1").Range("a1:d4"), _       PlotBy:=xlColumns

'Manually set the values for the data series     ActiveChart.SeriesCollection(1).Formula = _       "=SERIES(""First Data"",{""a"",""b"",""c"",""d""},{2,3,4,5},1)"

ActiveChart.SeriesCollection(2).Formula = _       "=SERIES(""Second Data"",{""a"",""b"",""c"",""d""},{6,7,8,9},2)"

ActiveChart.SeriesCollection(3).Formula = _       "=SERIES(""Third Data"",{""a"",""b"",""c"",""d""},{10,11,12,13},3)"

End Sub

この例のコメントは、各ステップで何が起こっているかを説明しています。

ダミーデータ範囲を設定する場合、SetSourceDataメソッドは、範囲がSheet1という名前のワークシート上にあると想定します。ブックにそのようなシートがない場合は、それに応じてコマンドを変更する必要があります。

後で、データ系列の値を手動で設定するときに、SERIESコマンドを使用して、系列のラベル(1番目のデータ、2番目のデータ、および3番目のデータ)、カテゴリラベルの配列(a、b、c、およびd)を指定します。すべてのシリーズ)、シリーズの値の配列、およびこれが表すシリーズ番号を指定する番号。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(10347)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excel-Creating_Charts_in_VBA [VBAでグラフを作成する]