Sub Consume_RoundedRectangle111_Click()
Dim i As Long, lastrow As Long, n As Long
Dim vResult()
Dim myWs As Worksheet
Set myWs = ThisWorkbook.Sheets(Range("B9").Text)
If ActiveSheet.Range("b4") = "" Or ActiveSheet.Range("b5") = "" Or ActiveSheet.Range("b6") = "" Or ActiveSheet.Range("b7") = "" Or ActiveSheet.Range("b8") = "" Or ActiveSheet.Range("b9") = "" Or ActiveSheet.Range("d4") = "" Or ActiveSheet.Range("d6") = "" Or ActiveSheet.Range("d7") = "" Or ActiveSheet.Range("d8") = "" Then
MsgBox "Please complete all fields!"
Exit Sub
End If
'lastrow = Sheets("database").Cells(Cells.Rows.Count, 2).End(xlUp).Row + 1
i = 10
Do While Cells(i, 3) <> "" And i < 30
n = n + 1
ReDim Preserve vResult(1 To 9, 1 To n)
vResult(1, n) = ActiveSheet.Range("E7") ' Consumer
vResult(2, n) = ActiveSheet.Range("B4") ' Date
vResult(3, n) = ActiveSheet.Range("E4") ' Ref
vResult(4, n) = ActiveSheet.Range("B5") ' Code
vResult(5, n) = ActiveSheet.Range("B6") ' Description
vResult(6, n) = ActiveSheet.Range("E6") ' U/M
vResult(7, n) = ActiveSheet.Range("B7") ' Qty
vResult(8, n) = ActiveSheet.Range("B8") ' Price
vResult(9, n) = ActiveSheet.Range("E8") ' Transaction
i = i + 1
Loop
myWs.Range("a" & Rows.Count).End(xlUp)(2).Resize(n, 9) = WorksheetFunction.Transpose(vResult)
MsgBox "Saved Succesfully!"
ThisWorkbook.Save
End Sub
这是我知道的代码,它将数据从一个工作表复制到另一个工作表称为数据库。但我现在想要的是将数据传输或复制到单元格确定的工作表。假设我有一个数据要复制到另一个工作表中,并且在单元格A5中包含“NBB”,当我运行宏时,数据将被复制到名为“NBB”的工作表中。对不起,我只是很难解释这对英语...使用VBA将数据传输到工作表
你得到什么错误,在什么行? – braX
你能否提供你的问题的更多细节?你的头衔非常不真诚,应该更具描述性。和你的问题一样。你并没有完全问你想要完成什么。请阅读[如何提问](https://stackoverflow.com/help/how-to-ask)和[如何创建最小,完整和可验证的示例](https://stackoverflow.com/help/ mcve)提供关于如何正确地提出接受积极和有用答案有更好变化的问题的提示。没有任何有关您的问题的详细信息,在这里没有人可以真正帮助您 – Busse
我编辑它,抱歉混淆。 –