我正在尝试在Excel中的VBA中创建动态图表。不幸的是,当我生成图形时,y轴的值最终将作为系列名称。 Here's the graph。我是一个非常新的VBA用户,所以我确定我只是忽略了一个非常基本的错误。这是我的代码。
Sheets("Sheet1").Activate
Dim lRow As Long
Dim lCol As Long
'Find the last non-blank cell in column G and H
Range("G3:H500").Select
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
Loop
lastrow = ActiveCell.Row - 1
'Find the last non-blank cell in row 1
lCol = Cells(1, Columns.Count).End(xlToLeft).Column
MsgBox "Last Row: " & lastrow & vbNewLine & _
"" & Columns(lCol).Address(False, False)
Set rng = Range("G3:H300" & lastrow)
Set xrang = Range("F3:F300" & lastrow)
rng.Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ApplyChartTemplate ( _
"c:\users\name\appdata\Roaming\Microsoft\Templates\Charts\brand_line_chart.crtx" _
)
ActiveChart.SetSourceData Source:=Range("G3:H300" & lastrow)
ActiveChart.Axes(xlCategory).Select
ActiveChart.SeriesCollection(1).XValues = Range("F3:F300" & lastrow)
非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
删除此行ActiveChart.SeriesCollection(1).XValues = Range(“F3:F300”& lastrow)。此外,由于您获得了lastrow数据,请将(“G3:H300”和“lastrow”)更改为(“G3:H”和“lastrow”)。在你设定范围的任何地方都这样做