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_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

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

このヒント(2622)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。