みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

新しいグラフを作成すると、既存グラフが新しいグラフと同一になってしまう。

Excel2003のVBAにて次のマクロを作成し、実行したところ、
新しいグラフを作成すると、既存グラフが新しいグラフと同一になってしまいます。
グラフは月度毎に作成します。
1月度のグラフを作成すると、
11月度のグラフ・12月度のグラフが、1月度のグラフと同じものになってしまいます。
マクロ作成時には、グラフ要素データの変化が小さく気が付かなかったのですが、グラフ要素データの変化が大きくなった時点で気が付きました。
解決方法をご存じの方、是非ともご教授願います。

'A:グラフを作成するシートの番号
'Sheets("Positions"):グラフを作成する位置データ保管庫
'L,T,W,H:グラフの位置データ(グラフを作成する都度指定)
'E:グラフ要素仕訳標
'F:作成したグラフの名前の保管場所標(グラフ要素変更時にグラフを更新するため)
 
Sheets(A).Select
NN = Sheets(A).Name
With Sheets(A).ChartObjects.Add(L, T, W, H)'L
.Chart.ChartType = xlDoughnut
If E = 0 Then
.Chart.SetSourceData Source:=Sheets("Positions").Range("Q1:Q11"), PlotBy:=xlColumns
Else
.Chart.SetSourceData Source:=Sheets("Positions").Range("R1:R11"), PlotBy:=xlColumns
End If
.Chart.Location Where:=xlLocationAsObject, Name:=NN
.Chart.HasTitle = False
.Chart.HasLegend = False
.Chart.ChartArea.Border.LineStyle = 0
.Chart.ChartArea.Interior.ColorIndex = xlNone
.Chart.PlotArea.Border.LineStyle = xlNone
.Chart.PlotArea.Interior.ColorIndex = xlNone
End With
R = Sheets(A).ChartObjects.Count
Sheets("Positions").Cells(F, 3) = Sheets(A).ChartObjects(R).Name

投稿日時 - 2007-01-18 10:56:11

QNo.2675398

すぐに回答ほしいです

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

この質問も回答がついてませんね。
内容が難しいというよりも、複雑そうで、見向きもしてないのではないかな。
回答者が、再現して考えるのが、易しいように、質問者が考えて質問のコードを修正ぐらいして、上げてはどうですか。
Eなんて、初め何のことか判らなかった。
また、およそ、どこがうまくいかないのか、質問者が色々やってみて、範囲を絞るべきです。
他人のコードを解析するのは、自分が組む以上に、大変時間がかかります。
シート名など可変にするにしても、質問に影響しないなら、仮の定めた名前にするとか。
データも数字の形で、エクセルの場合は、行と列を銘記して、全部が無理なら一部を、質問に上げるべきです。
プログラムは
(1)コード
(2)データ
(3)実行環境
で、エラーがでる・思い通りにならないものです。
コードだけでなく(2)も大切です。
例えば、私のエクセルの質問回答は、できるだけ、本質に影響しそうな点に絞り、簡単なデータをつけて、説明しています。

投稿日時 - 2007-01-21 14:01:03

お礼

ご忠告ありがとうごさいます。
反省しております。

投稿日時 - 2007-01-24 14:11:39

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問