プロが教えるわが家の防犯対策術!

マクロにてグラフを複数作成しようと考えています

しかし、ループを使用してグラフを作成すると
1つ以上の場合エラーになってしまい作成できません

どのように作成したらよいのでしょうか?
2つ目以降のグラフObjectの名前が重なるからエラーになるとか、そういう部分での問題でしょうか?

-------------------------------------

Sub Graph
  For i = 1 To 2 'source_cnt
  Call Make_Graph(引数)
  Next
End Sub

-------------------------------------

Sub Make_Graph(引数)

With ActiveSheet.ChartObjects.Add( _
Left:=Range(***).Left, _
Top:=Range(***).Top, _
Width:=Range(***).Width, _
Height:=Range(***).Height)
.Chart.ChartType = xlRadar
.Chart.SetSourceData Source:= Range(***), PlotBy:=xlColumns
.Chart.Location Where:=xlLocationAsObject, Name:=WorkSheet.Name
.Chart.HasLegend = False
End With

-------------------------------------

A 回答 (1件)

標準モジュールに、質問のコードを一部手直しして、下記にして貼り付け実行しました。

2つレーダーチャートを描きましたが。
後はご自分で改良してください。
Dim i
Sub Graph()
For i = 1 To 2 'source_cnt
Call Make_Graph
Next
End Sub
Sub Make_Graph()

With ActiveSheet.ChartObjects.Add( _
Left:=Cells(2, i * 5).Left, _
Top:=Cells(2, i * 5).Top, _
Width:=200, _
Height:=300)
.Chart.ChartType = xlRadar
.Chart.SetSourceData Source:=Range(Cells(1, 1), Cells(10, i)), PlotBy:=xlColumns
'.Chart.Location Where:=xlLocationAsObject, Name:=Worksheet.Name
.Chart.HasLegend = False
End With
End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!