質問: names ``` ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/4bff510c52599d73b1f48bdf8fe24ff7.png) X軸だけ参照シートが同じになってしまいます。 これをシート毎から参照したいです。 上記の画像でいいますとX軸はCIMO01425からでしがとってませんが これをCIMP01425はCIMP01425で、CIMP01426はCIMP01426から参照したいです。 --- 以前のグラフはX軸がシート毎、不変の数値だったので例えばシート1のA列の数値をX軸に指定して Y軸はシート1のC列、シート2のC列とすればグラフが重なってできたのですが、 今回はX軸もY軸もそれぞれシート毎、数値が違います。 なのでX軸をシート1のC列、Y軸をシート1のB列で一つ、その上にX軸をシート2のC列、Y軸をシート2のB列で形成し重ねたいのです。 まとめますと、各シート毎の列から数値を拾ってグラフを作成し重ねたいという事になります。 【やりたいイメージ】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/1171c993eeb5748bb17ada5f08f06f66.png) 【完成イメージ】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/d5bf72b096829e6d2fa575864d3bbaea.jpeg)
回答: ``` Set rng = .Range("N1014:N3014") ``` のRangeオブジェクトに最初のシートのRangeオブジェクトが 入ったままになっているのが原因ですね。 ``` '2回目以降はデータ系列を追加 Set rng = .Range("N1014:N3014") cht.Chart.SeriesCollection.Add rng Set rng = Nothing 'オブジェクト変数「rng」を空にする。 ``` とする事を含め、使用している全てのオブジェクト変数をマクロ終了時に 明示的に空にする(Set オブジェクト変数=Nothing)事を行なう必要があります。 オブジェクト変数は必ず明示的に空にしないと、データがメモリ上に残って 不具合を発生する原因になりますので...。 また、上記全体コードでは、For~に対応するNext iが無いのも見受けられます。 これも、不具合起因と考えられますが、いかがでしょうか? 一応ご確認願います。