系列を切り離す


円グラフで、特定の要素だけを切り離すには、次のようにします。

Sub Macro()
    ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).Points(2).Explosion = 20
End Sub

Explosionプロパティには、切り離す量を整数で指定します。Explosionプロパティに指定する切り離す量は、半径に対する割合です。上記の「Explosion = 20」は、半径の20%に相当する距離だけ切り離すという意味です。

系列と要素については、下記のページをご覧ください。

系列と要素について

Excel 2003のコードは動くか

Excel 2003で、要素の切り離しをマクロ記録すると、次のようなコードが記録されます。

Sub Macro()
    ActiveSheet.ChartObjects(1).Activate
    ActiveChart.SeriesCollection(1).Select
    ActiveChart.SeriesCollection(1).Points(2).Select
    Selection.Explosion = 20
End Sub

要素を切り離す操作は、まず円グラフの系列を選択し、続いて切り離したい要素を選択します。その操作が忠実に記録されていますから、上のようにSelectが2回あるわけですね。もちろん、このコードをそのまま使う人はいないでしょう。マクロ記録は、マクロを作る機能ではなく、分からないオブジェクトやプロパティを調べる機能なのですから。もちろん、このコードも、Excel 2007で正常に動作します。