dポイントプレゼントキャンペーン実施中!

エクセルに備わっているマクロの自動記録機能を使って、散布図のグラフを作成するマクロを作っています。
シートの名前が変わるとマクロが正常に働かない問題は、

Dim SheetName As String
SheetName = ActiveSheet.Name
と定義して、

ActiveChart.SetSourceData Source:=Sheets("Trial10").Range("CI1:CK7"), PlotBy _
:=xlColumns

の "Trial10" を SheetName に書き換えれば動くようになることは分かったのですが、

ActiveChart.SeriesCollection(1).XValues = "=Sheet1!R2C80:R101C80"

上記の場所で行き詰まっているようで、このような場合、どう書き換えればよいのかが分かりません。
どのように書き直せばよいのでしょうか。


ちなみに、マクロやVBAに関しては初心者です。
プログラムの知識も殆どありません。

どうか、ご教授をお願い致します。

A 回答 (1件)

ActiveChart.SeriesCollection(1).XValues = "=Sheet1!R2C80:R101C80"



ActiveChart.SeriesCollection(1).XValues = "=" & SheetName & "!R2C80:R101C80"
に書き直してみて下さい。

ただし、グラフ化する数値の(表内の)範囲が同じであることが前提
です。
シートが変わるたびにグラフ化する表内の範囲に変化があるのでしたら
それを調べる必要があるので、複雑な操作が必要になると思います。
    • good
    • 0
この回答へのお礼

なるほど、回答して頂いた通りに書き直したら、完璧に動くようになりました!

これでやっと終われそうです。
本当にありがとうございました。

お礼日時:2008/08/04 11:57

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