我需要一些帮助来编写一些生成折线图的 VBA 代码。添加新数据时图表需要更新,我还需要显示的数据范围是最后 30 个数据单元格。我必须将此添加到现有工作簿中,并且能够编写在图表上显示现有数据的 VBA。
我已经创建的
Sub Chartspc()
Dim chrt As ChartObject
Dim r1 As Range
Dim r2 As Range
Dim r3 As Range
Dim r4 As Range
Set r1 = Sheets("Breather L551").Range("J231:J261")
Set r2 = Sheets("Breather L551").Range("N231:N261")
Set r3 = Sheets("Breather L551").Range("R231:R261")
Set r4 = Sheets("Breather L551").Range("V231:V261")
Set chrt = Sheets("GRAPHTEST").ChartObjects.Add(Left:=0, Width:=600, Top:=0, Height:=300)
chrt.Chart.SetSourceData Source:=Union(r1, r2, r3, r4)
With chrt
.Chart.ChartType = xlLine
.Chart.HasTitle = True
.Chart.ChartTitle.Text = "L551"
.Chart.SetElement (msoElementLegendRight)
.Chart.SeriesCollection(1).Name = "LrA CP"
.Chart.SeriesCollection(2).Name = "LrB CP"
.Chart.SeriesCollection(3).Name = "LrC CP"
.Chart.SeriesCollection(4).Name = "LrD CP"
End With
End Sub
更详细地说,我希望能够从我拥有的底部 30 个数据单元格中创建一个图表。然后,我希望在图表上表示新数据,并删除我的 30 个单元格范围之外的旧数据或在图表上不表示;这将是底部单元格和其上方的 29 个单元格,然后当添加新数据时,所有内容都会向下调整一个单元格。