尝试使用 VBA 复制并粘贴到另一个工作表,但粘贴时只粘贴空白

时间:2021-07-19 19:23:58

标签: excel vba copy-paste

我无法找出 VBA 代码中的问题。我的 excel 工作簿涉及两个工作表。一个名为“Database”,另一个名为“Picked”。使用用户表单,某人可以将他们的数据输入到数据库中。订单完成后,他们会单击一个名为“已取货”的按钮。当他们单击此按钮时,我希望它复制在表单中选择的行(从数据库表中),然后将其粘贴到“已选择”表中的下一个空行中。

Private Sub cmdPicked_Click()

 Dim iRow As Long

  If Selected_List = 0 Then

    MsgBox "No row is selected.", vbOKOnly + vbInformation, "Delete"
    Exit Sub
  End If

Dim i As VbMsgBoxResult

i = MsgBox("Has this item been picked?", vbYesNo + vbQuestion, "Confirmation")

If i = vbNo Then Exit Sub


If frmForm.txtRowNumber.Value = "" Then

Else

    iRow = frmForm.txtRowNumber.Value
    
End If

iRow = Application.WorksheetFunction.Match(Me.lstDatabase.List(Me.lstDatabase.ListIndex, 0), _
ThisWorkbook.Sheets("Database").Range("A:A"), 0)

Rows(iRow).Copy
Worksheets("Picked").Range("A1").End(xlDown).Offset(1, 0).EntireRow.Insert

 
iRow = Application.WorksheetFunction.Match(Me.lstDatabase.List(Me.lstDatabase.ListIndex, 0), _
ThisWorkbook.Sheets("Database").Range("A:A"), 0)

ThisWorkbook.Sheets("Database").Rows(iRow).Delete 'Delete



Call Reset

MsgBox "Selected item has been picked.", vbOKOnly + vbInformation, "Completed"

End Sub

使用此代码时,它不会将所选数据库行中的值粘贴到所选工作表中的下一个空单元格中。它所做的只是粘贴一个空白的白行。如果可以,请帮帮我!任何帮助表示赞赏。

0 个答案:

没有答案