我正在使用VBA将数据复制并保存在另一张表上,即“数据”。保存的数据,但第一次保存在错误的地方,即范围。它跳了50行。第二次以后,它保存在正确的位置。你能告诉我我的错误] 1
Sub Save_Click()
' Save Pay_Slip on "Data"Sheet
Application.ScreenUpdating = False
Dim copySheet As Worksheet
Dim pasteSheet As Worksheet
Dim LR As Long
Dim last As Long
Sheets("Data").Unprotect Password:=""
Sheets("Pay_Slip").Unprotect Password:=""
LR = Sheets("Pay_Slip").Range("B500").End(xlUp).Row
last = Sheets("Data").Range("E" & Rows.Count).End(xlUp).Row
Set copySheet = Worksheets("Pay_Slip")
Set pasteSheet = Worksheets("Data")
Sheets("Data").Range("A" & last + 3).Value =
Sheets("Pay_Slip").Range("Y3").Value
Sheets("Data").Range("B" & last + 3).Value =
Sheets("Pay_Slip").Range("T3:V3").Value
Sheets("Data").Range("C" & last + 3).Value =
Sheets("Pay_Slip").Range("I2:K2").Value
copySheet.Range("A5" & ":AI" & LR + 2).Copy
pasteSheet.Cells(Rows.Count, 4).End(xlUp).Offset(1, 0).PasteSpecial
xlPasteValues
Application.CutCopyMode = False
Application.ScreenUpdating = True
Sheets("Pay_Slip").Range("X2").Value = _
Sheets("Pay_Slip").Range("X2").Value + 1
Sheets("Pay_Slip").Protect Password:=""
Sheets("Data").Protect Password:=""
End Sub
答案 0 :(得分:0)
这是第一次将数据放在范围内(" A4")等等,这是因为您正在单独编写语句,然后您编写了代码来复制范围内的数据(" A5"&":AI"& LR + 2)因此将数据放置在正确的位置。如果你想在数据表中粘贴数据"数据"在范围内(" W2")然后忽略各个陈述。