当我运行我的代码复制和粘贴数据从我的UserForm到我的工作表,我得到一个"对象要求"错误。我也不知道为什么。是.Copy函数不工作与值或它是在我的UserForm?是否有一个不同的函数,我应该使用或我只是在我的代码中输入错误的东西?
下面是我的代码:
Dim wsDest As Worksheet
Dim lCopyLastRow As Long
Dim lDestLastRow As Long
Set wsDest = ThisWorkbook.Worksheets("backend")
lDestLastRow = wsDest.Cells(wsDest.Rows.Count, "I").End(xlUp).Offset(1).Row
SalesForm.BHSDDATEIF.Value.Copy _
wsDest.Range("I" & lDestLastRow)
SalesForm.BHSDREPNUMBERIF.Value.Copy _
wsDest.Range("H" & lDestLastRow)
SalesForm.BHSDMAINNUMBERLF.Value.Copy _
wsDest.Range("S" & lDestLastRow)
SalesForm.BHSDTAPNAMELF.Value.Copy _
wsDest.Range("T" & lDestLastRow)
SalesForm.BHSDCOMPANYNAMELF.Value.Copy _
wsDest.Range("U" & lDestLastRow)
SalesForm.BHSDEMAILLF.Value.Copy _
wsDest.Range("V" & lDestLastRow)
SalesForm.BHSDADDRESSLF.Value.Copy _
wsDest.Range("W" & lDestLastRow)
SalesForm.BHSDCSZLF.Value.Copy _
wsDest.Range("X" & lDestLastRow)
SalesForm.BHSDAMOUNTIF.Value.Copy _
wsDest.Range("F" & lDestLastRow)
SalesForm.BHSDCCAMOUNTIF.Value.Copy _
wsDest.Range("G" & lDestLastRow)
SalesForm.BHSDCARDNUMIF.Value.Copy _
wsDest.Range("B" & lDestLastRow)
SalesForm.BHSDEXPIF.Value.Copy _
wsDest.Range("C" & lDestLastRow)
SalesForm.BHSDCVVIF.Value.Copy _
wsDest.Range("D" & lDestLastRow)
SalesForm.BHSDZIPIF.Value.Copy _
wsDest.Range("E" & lDestLastRow)
SalesForm.BHSRUNDATEIF.Value.Copy _
wsDest.Range("A" & lDestLastRow)
SalesForm.BHSDNOTESIF.Value.Copy _
wsDest.Range("M" & lDestLastRow)
End Sub```
SalesForm.BHSDDATEIF.Value
不是对象,所以它没有Copy
方法。
与其复制/粘贴,不如直接将值赋给范围。
,
wsDest.Range("I" & lDestLastRow) = SalesForm.BHSDDATEIF.Value