返回列表 上一主題 發帖

如何讓最新的資料都寫在上面??

如何讓最新的資料都寫在上面??

變動記錄.rar (20.51 KB)
Sub RecordPrice()
Dim WR As Long
Dim I As Long

WR = Range("A1").End(xlDown).Row + 1
[A2] = TimeValue(Now)
For I = 1 To 8
   Cells(WR, I) = Cells(2, I)
Next 'I
With ActiveWindow
        If Intersect(Cells(WR, "B"), .VisibleRange) Is Nothing Then .SmallScroll 1
    End With
End Sub

程式碼如上,目前是最新資料會往下寫,如果我要改成最新的資料都出現在A3欄(就是往上寫)這邊WR = Range("A1").End(xlDown).Row + 1要怎麼改??

回復 2# koo


    K大我上次少貼了一些程式碼,如果還要加上G2有變動才紀錄的條件要如何修改??

WR = Range("A1").End(xlDown).Row + 1
'ActiveWindow.ScrollRow = WR - 5 '只顯示最新幾筆資料
If (WR = 3) Or _
   (Range("G" & WR - 1) <> Range("G2")) Then '總量有異動時才記錄
   For I = 1 To 8
      Cells(WR, I) = Cells(2, I)
   Next 'I

TOP

本帖最後由 藍天麗池 於 2015-12-28 14:23 編輯

回復 3# c_c_lai


    C大可以告訴我這些程式碼要貼在哪裡,還有那些地方要修改嗎??
另外,之前有些程式碼沒貼到,抱歉
裡面還有G2變動才紀錄的條件

Sub RecordPrice()
Dim WR As Long
Dim I As Byte

If Range("H2") < 1 Then Exit Sub



WR = Range("A1").End(xlDown).Row + 1
'ActiveWindow.ScrollRow = WR - 5 '只顯示最新幾筆資料
If (WR = 3) Or _
   (Range("G" & WR - 1) <> Range("G2")) Then '總量有異動時才記錄
   For I = 1 To 8
      Cells(WR, I) = Cells(2, I)
   Next 'I
End If
Application.ScreenUpdating = False
    With Sheets("RTD")
        .Rows(3).Insert
        .[A3].Resize(1, 8) = .[A2].Resize(1, 8).Value
    End With
    Application.ScreenUpdating = True
End Sub

TOP

        靜思自在 : 一句溫暖的話,就像往別人身上灑香水,自己會沾到兩三滴。
返回列表 上一主題