上図のグラフでは
となっています。これらを、任意の文字列に変更してみましょう。
Sub Sample() With ActiveSheet.ChartObjects(1).Chart .SeriesCollection(1).XValues = "={""A"",""B"",""C""}" .SeriesCollection(1).Name = "=""部長""" .SeriesCollection(2).Name = "=""課長""" .SeriesCollection(3).Name = "=""係長""" End With End Sub
「""」とか「""""」とか、ダブルコーテーションの意味が分からない方は、次のページをご覧ください。
同じ操作をExcel 2003でマクロ記録すると、次のようなコードが生成されます。
Sub Macro() ActiveSheet.ChartObjects(1).Activate ActiveChart.ChartArea.Select ActiveChart.SeriesCollection(1).XValues = "={""A"",""B"",""C""}" ActiveChart.SeriesCollection(1).Name = "=""部長""" ActiveChart.SeriesCollection(2).XValues = "={""A"",""B"",""C""}" ActiveChart.SeriesCollection(2).Name = "=""課長""" ActiveChart.SeriesCollection(3).XValues = "={""A"",""B"",""C""}" ActiveChart.SeriesCollection(3).Name = "=""係長""" End Sub
ちょっと冗長なコードですが、互換性に問題はなさそうです。
【Excel 2007での実行結果】
Excel 2003のコードは、そのままExcel 2007でも動作します。