VBA:每周更新的仪表板。 复制Trendline的数据。 EXCEL

我已经设法使用VBA在Excel中创build一个易于更新的仪表板。 这是相当稳固的,但我需要一个每周更新的趋势线添加到这个数据。

我想要的是这样一个macros:

  1. 将数据写入范围X (例如A1:A5)
  2. 将范围X的数据复制到范围Y (例如A10:A15)

然后当我再次运行步骤1和2

  1. 将数据写入范围X (覆盖X A1:A5中的数据)
  2. 将范围Y的数据复制到范围Y + 1 (例如B10:B15)

重复无限次(每次向右移动一列)

我得到的是,我需要定义列线作为一个整数,然后参考它。 (例如

Sub Trend() Dim i As Integer i = 2 Sheets("Data").Select Range("A1:A5").Select Selection.Copy Sheets("Trendline data").Select ActiveSheet.Cells(1, i).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Sheets("Data").Select i = i + 1 End Sub 

不过重复这个macros并不会增加我对我的。

~~同样在第2列中填充了(Data!A1:A5)中的数据重复~~这是通过更新代码来修复的。

几乎我需要解决的是该行

  "Dim i As integer" i = 2 

 "Dim i As integer" i = 3 

永久性地重复下一次i = 4,i = 5等

在那之后,我很容易从这个范围创build折线图

谢谢。

编辑:写了我认为会工作,但显然没有

编辑:

那个怎么样?

 Sub Trend() Dim i as integer If Sheets("Data").Cells(1,1).Value = "" Then Sheets("Data").Cells(1,1).Value = 1 End if i = Sheets("Data").Cells(1,1).Value Sheets("Data").Select Range("A1:A5").Select Selection.Copy Sheets("Trendline data").Select ActiveSheet.Cells(1, i).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Sheets("Data").Select Sheets("Data").Cells(1,1).Value = i + 1 End Sub