簡體   English   中英

VBA Excel-插入新行

[英]VBA Excel - Insert in New Row

我有可以將用戶名和時間戳插入電子表格的代碼。 但是,它當前會覆蓋現有記錄。 我正在努力向代碼中添加邏輯,因此在打開電子表格時,新的用戶名/時間戳會附加到下一個空白行。 非常感謝您的協助!

Private iNextRow As Long
Const HIDDEN_SHEET As String = "Sheet3"

Private Sub Workbook_Open()
With Worksheets(HIDDEN_SHEET)
.Range("A1").Value = Environ("UserName")
.Range("B1").Value = Format(Date + Time, "dd mmm yyyy hh:mm:ss")
End With
iNextRow = 2

End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error GoTo wb_exit
Application.EnableEvents = False
If Sh.Name <> HIDDEN_SHEET Then
With Worksheets(HIDDEN_SHEET)
.Range("A" & iNextRow).Value = Environ("UserName")
.Range("B" & iNextRow).Value = Format(Date + Time, "dd mmm yyyyhh: mm: ss ")
End With
End If

wb_exit:
Application.EnableEvents = True
End Sub

找到要放置新數據range.EntireRow.Insert range = range.Offset(-1, 0)然后填寫數據

嘗試這個:

 Dim nextRow as integer

 nextRow = Range("A1").End(xlDown).Offset(1,0).Row
 Cells(nextRow,1)=(Environ$("Username"))
 Cells(nextRow,2)=VBA.Now()

無法克制asp8811的出色解決方案:

With Sheet3.Range("A1").End(xlDown)
    .Offset(1,0) = environ$("UserName")
    .Offset(1,1) = Now
End with

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM