プロが教えるわが家の防犯対策術!

Excelの等高線図を使って温度分布図を作成しています。
(ある温度以上では赤,ある温度以下では青,というように)

その図作成の手順は
データ範囲選択→等高線グラフ作成→温度幅(目盛り幅)設定→各温度幅での色の変更
となっています。

この作成手順をマクロ登録しており,上の手順で温度幅の設定までは登録・実行でき
るのですが,色の変更操作は登録してもそれについての記述がされません。




今下のようにコードされています。


ActiveSheet.Shapes.AddChart.Select 'グラフを作成
ActiveChart.SetSourceData Source:=Range("'Sheet1'!$D$7:$Z$107")
'シート1のデータを使用 範囲選択
ActiveChart.ChartType = xlSurfaceTopView '等高線作成

ActiveChart.Axes(xlSeries).Select
Selection.Delete

ActiveChart.PlotBy = xlRows
ActiveChart.HasAxis(xlValue) = True
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlValue).MinimumScale = 0 ’温度幅設定
ActiveChart.Axes(xlValue).MaximumScale = 30
ActiveChart.Axes(xlValue).MaximumScale = 110
ActiveChart.Axes(xlValue).MajorUnit = 10

ActiveChart.Legend.Select
ActiveChart.Legend.LegendEntries(1).Select
'色の変更 10個の凡例の色を一つずつ変えていきたい
ActiveChart.Legend.LegendEntries(2).Select
ActiveChart.Legend.LegendEntries(3).Select
ActiveChart.Legend.LegendEntries(4).Select
ActiveChart.Legend.LegendEntries(5).Select
ActiveChart.Legend.LegendEntries(6).Select
ActiveChart.Legend.LegendEntries(7).Select
ActiveChart.Legend.LegendEntries(8).Select
ActiveChart.Legend.LegendEntries(9).Select
ActiveChart.Legend.LegendEntries(10).Select
End Sub


上の通り凡例の色変更の部分で、色の情報などが記述されていないので

ActiveChart.Legend.LegendEntries(1).Format.Fill.ForeColor.RGB = RGB(0, 0,
0)
と入れてみたのですがこれを実行すると

実行時エラー’-2147467259 (80004005)':
'Fill'メソッドは失敗しました:'ChartFormat'オブジェクト

と表示されます。


どこに問題があるのか,どのように変えればいいのか教えてもらえないでしょうか。

A 回答 (1件)

下記で試してください。


(例1)
ActiveChart.Legend.LegendEntries(1).LegendKey.Interior.Color = RGB(0, 255, 0)
(例2)
ActiveChart.Legend.LegendEntries(1).LegendKey.Interior.ColorIndex = 7
    • good
    • 0
この回答へのお礼

試してみたところ上手くいきました!
ありがとうございました。

お礼日時:2011/08/02 06:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!