• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAでコピーしたグラフについて)

Excel-VBAでグラフを一行下の範囲を参照して変更する方法

このQ&Aのポイント
  • Excel-VBAを使用して、コピーしたグラフについて、元データの範囲を一行下を参照するように変更したい場合、ループを使用して行の参照範囲を変更することができます。
  • 具体的には、ActiveChart.SeriesCollection(1).Formulaを使用して、元データの系列名とYの値の範囲を指定します。ループを使用して、行の参照範囲を一行ずつ増やしていきます。
  • 最初の参照範囲は19行、次は20行、そして最終的には59行を参照するように変更することができます。この方法を使用することで、手動で19を20に変更する必要がなくなります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

"=SERIES(元データ!$B$19,元データ!$C$3:$DI$3,元データ!$C19:$DI19,1)" この部分が文字列です。 文字列を変数に入れて変数指定にしたら良いだけです。 DataStr = "=SERIES(元データ!$B$19,元データ!$C$3:$DI$3,元データ!$C19:$DI19,1)" ActiveChart.SeriesCollection(1).Formula = DataStr その際に変化する部分を別変数で変化させます。 数値を文字列に置き換えるにはCstr関数を使います。 よって、次のようになります。 Count = 19 CountStr = Cstr(Count) DataStr = "=SERIES(元データ!$B$" & CountStr & ",元データ!$C$3:$DI$3,元データ!$C" & CountStr & ":$DI" & CountStr & ",1)" ActiveChart.SeriesCollection(1).Formula = DataStr あとはループ処理でCountをカウントアップさせてください。

ririco12
質問者

お礼

早々に回答ありがとうございます。 質問がわかりづらいなか、とってもわかりやすくご回答いただきたすかりました。 おかげでちゃんと動かすことができました。ありがとうございました。

関連するQ&A

専門家に質問してみよう