- 締切済み
エクセルグラフの表示方法
エクセルのデーターベースがあり、それを元に移動合計のマクロデーターをつくりました。次に移動合計データーを元にグラフを表示したいのですが、各個店ごとに1シートにまとめ、そのシートをたくさん作り一つのブックファイルとして利用したいのですが、なぜかグラフデーターが皆同じになってしまいます。どうしたら、各個店ごとのグラフデーターとして表示されるようになるのでしょうか?どなたか、ご教授願いませんでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- xls88
- ベストアンサー率56% (669/1189)
イマイチやっている内容が判然としません。 外しているかも知れませんが 「グラフをコピーしたが、元のシートにあるデータを参照する」 「貼り付け先シート(グラフのあるシート)を参照したい」 ということなら グラフの乗っているシートをコピーすれば「元のデータ」参照先は新しいシートになります。 データ範囲と、グラフの背景セル範囲を、同時に切り取って、新規シートに貼り付け、でもOKです。 あるいは 事後処理ですが 下記のようなVBAでSERIES式に含まれるシート名を置換すればよいです。 「元のデータ」セル範囲レイアウトは変わらない、という事が前提です。 シート上のグラフ全てが処理対象です。 Dim cht As ChartObject Dim srs As Series Dim fws As String Dim aws As String aws = ActiveSheet.Name For Each cht In ActiveSheet.ChartObjects For Each srs In cht.Chart.SeriesCollection With srs fws = Split(Split(.Formula, ",")(2), "!")(0) .Formula = Replace(.Formula, fws, "'" & aws & "'") End With Next srs Next cht