如下图,在工作表中,A1是你要数据,先把你的数据复制粘贴到B1,在A2中输入1;
然后按ALT+F11,进入VBA编程,双击左边,ThisWorkbook,在右边粘贴下列代码,以后只要你的A1数据一变,就自动会在第2列后续单元格中保存历史数据的,希望能对你有所帮助.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim a, b, c
a = Val(Cells(1, 1).Value)
b = Val(Cells(1, 2).Value)
If a <> b Then
c = Val(Cells(2, 1).Value)
Cells(c + 1, 2).Value = Cells(1, 2).Value
Cells(1, 2).Value = Cells(1, 1).Value
Cells(2, 1).Value = c + 1
End If
End Sub
Sub Macro1_copy()
'
' Macro1_copy Macro
'
'
Dim ge As String
ge = "a" & Range("f2").Value 'F2格放将要插入的行的行号,
Range("f2").Value = Range("f2").Value + 1 '行号递增
ActiveWorkbook.RefreshAll '刷新
Range("A1").Select '导入数据格
Selection.Copy
Range(ge).Select
ActiveSheet.Paste
End Sub
--------------------
从a1个复制到目标格,你可以做相应的修改,
ok?
用“宏”伺候,编一个小程序就能搞定
不知道你的刷新频率是否固定,如果是,那写公式都可以的.
不然写VBA.
VBA。。。