web-dev-qa-db-ja.com

VBAの可変セル範囲に基づいてグラフのソースデータを設定する

移動平均に似た構造のデータチャートを生成するレポートテンプレートを作成しています

このために、1つのシートでデータの範囲(例:_f10:i14_)を選択し、それを1つのグラフのソースとして配置して設定する必要があります

次のコードは機能します

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range("f10,i14")

しかし、これはしません

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range(Cells(x, y), Cells(k, z))

_1004 error_を返します

ただし、レポートの目的で、変数インデックスに基づいて範囲を指定する必要があります。助けてください

6

_.Cells_オブジェクトを完全に修飾する必要があります

これを試して

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range(Sheets("Weekly Trends").Cells(x, y), Sheets("Weekly Trends").Cells(k, Z))

上記のコードを短くすることもできます

_With Sheets("Weekly Trends")
    ActiveChart.SetSourceData Source:=.Range(.Cells(x, y), .Cells(k, Z))
End With
_
14
Siddharth Rout