私は300列のワークシートを持ち、同じワークシートにある他の2枚のシートからデータを取り込んで各列に1つの散布図を作成したいと考えています。 問題はVBAに慣れていないことと、一部のエラーコードがまったく役に立たないことです。VBAを使用してExcelで複数のグラフを作成
Private Sub Create_Charts()
Dim sh As Worksheet
Dim chrt As Chart
For i = 1 To 300
Set sh = ActiveWorkbook.Worksheets("Graphs")
Set chrt = sh.Shapes.AddChart.Chart
With chrt
'Data
.ChartType = xlXYScatter
.SeriesCollection.NewSeries
.SeriesCollection(1).Name = "=""Scatter Chart"""
'With the following parameters it works:
'.SeriesCollection(1).XValues = "=OP!$c$4:$c$1588"
'.SeriesCollection(1).Values = "=PV!$c$4:$c$1588"
'But I need something like this:
.SeriesCollection(1).XValues = CStr(Worksheets("PV").Range(Cells(i, 4), Cells(i, 1588)))
.SeriesCollection(1).Values = CStr(Worksheets("OV").Range(Cells(i, 4), Cells(i, 1588)))
'Location
.ChartArea.Left = 380 * i - 380
.ChartArea.Top = 100
.ChartArea.Height = 360
.ChartArea.Width = 360
'Formatting
.Axes(xlCategory).HasMajorGridlines = True
.Axes(xlValue).HasMajorGridlines = True
.HasAxis(xlCategory, xlPrimary) = False
.HasAxis(xlValue, xlPrimary) = False
.HasLegend = False
End With
Next i
End Sub
質問、特定の問題やエラーや問題自体でそれを再現するために必要な最短のコードを希望の動作を含める必要があります。明確な問題文がない質問は、他の読者にとって有用ではありません。 [mcve]を参照してください。 –
エラーコードは何を正確に示し、どの行が停止していますか? – BerticusMaximus
"300列のワークシートがあり、同じワークシートにある他の2枚のシートからデータを取り込んで、各列に1つの散布図を作成したいと考えています。私はこれが十分に明確だと思った。 –