Excel 将数据复制到下一个空单元格
从Sheet3和Sheet4复制数据,数据在A列中,每次单元格的数量都会有所不同。我想从sheet3的a列和sheet4的a列复制数据,并将其粘贴到sheet5单元格A3,然后每次粘贴到sheet5的下一个空单元格中。 它仅粘贴第3页的数据,而不粘贴第4页的数据 下面是我尝试过的宏- 我尝试从不同的线程复制宏,但无法做到这一点。请帮助我,因为我不熟悉宏。 提前谢谢Excel 将数据复制到下一个空单元格,excel,vba,Excel,Vba,从Sheet3和Sheet4复制数据,数据在A列中,每次单元格的数量都会有所不同。我想从sheet3的a列和sheet4的a列复制数据,并将其粘贴到sheet5单元格A3,然后每次粘贴到sheet5的下一个空单元格中。 它仅粘贴第3页的数据,而不粘贴第4页的数据 下面是我尝试过的宏- 我尝试从不同的线程复制宏,但无法做到这一点。请帮助我,因为我不熟悉宏。 提前谢谢 Sub Macro10() ' ' Macro10 Macro ' ' Sheets("Sheet3").Sele
Sub Macro10()
'
' Macro10 Macro
'
'
Sheets("Sheet3").Select
Range("A3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Sheet5").Select
Range("A3").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("Sheet4").Select
Range("A3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Sheet5").Select
Worksheets(“Sheet5”).Activate
erow = Sheet5.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ActiveSheet.Paste Destination:=Worksheets(“Sheet5”).Rows(erow)
Range("A1").Select
Application.CutCopyMode = False
End Sub
从工作表到主工作表
常数版本
“我讨厌常数”版本
从工作表到主工作表
常数版本
“我讨厌常数”版本
请将代码作为文本复制到您的问题(帖子)中,您可以通过单击帖子下方的“编辑”按钮进行修改。您可以使用{}将其格式化为代码。这表明您的代码不正确。不知道如何更正。复制粘贴代码并发布数据的屏幕截图。您可能会从阅读中受益。•还请注意,您在
“Sheet5”
中使用了这些奇特的引号,但VBA只接受简单的引号“Sheet5”
,您必须更改它们。请将代码作为文本复制到您的问题(帖子)中,您可以通过点击帖子下方的编辑按钮来修改这些问题(帖子)。您可以使用{}将其格式化为代码。这表明您的代码不正确。不知道如何更正。复制粘贴代码并发布数据的屏幕截图。您可能会从阅读中受益。•还要注意,您在“Sheet5”
中使用了这些奇特的引号,但VBA只接受简单的引号“Sheet5”
,您必须更改它们。@Rohit Khandelwal:非常抱歉。代码完全错了。这一个已经过测试,正在工作。@Rohit Khandelwal:非常抱歉。代码完全错了。这是一个测试和工作。
Sub CopyToMaster()
Const cSource1 As String = "Sheet3" ' 1st Source Worksheet Name
Const cSource2 As String = "Sheet4" ' 2st Source Worksheet Name
Const cTarget As String = "Sheet5" ' Target Worksheet
Const cRange As String = "A3" ' First Cell Address of Copy Range
Const cCol As Long = 1 ' Target Column Number
Dim ws1 As Worksheet ' 1st Source Worksheet
Dim ws2 As Worksheet ' 2nd Source Worksheet
Dim wsT As Worksheet ' Target Worksheet
Dim Rng As Range ' Copy Range (in 1st and 2nd Source Worksheet)
Dim FNR As Long ' First Not Used Row
' Create references to all Worksheets
With ThisWorkbook
Set ws1 = .Worksheets(cSource1)
Set ws2 = .Worksheets(cSource2)
Set wsT = .Worksheets(cTarget)
End With
' Calculate First Not Used Row in Target Column.
FNR = wsT.Cells(wsT.Rows.Count, cCol).End(xlUp).Offset(1).Row
' Calculate Copy Range in 1st Source Worksheet
Set Rng = ws1.Range(ws1.Range(cRange), ws1.Range(cRange).End(xlDown))
' Copy Copy Range in 1st Source Worksheet to Target Column.
Rng.Copy wsT.Cells(FNR, cCol)
' Calculate First Not Used Row in Target Column.
FNR = wsT.Cells(wsT.Rows.Count, cCol).End(xlUp).Offset(1).Row
' Calculate Copy Range in 2nd Source Worksheet
Set Rng = ws2.Range(ws2.Range(cRange), ws2.Range(cRange).End(xlDown))
' Copy Copy Range in 2nd Source Worksheet to Target Column.
Rng.Copy wsT.Cells(FNR, cCol)
End Sub
Sub IHateConstants()
Dim ws1 As Worksheet ' 1st Source Worksheet
Dim ws2 As Worksheet ' 2nd Source Worksheet
Dim wsT As Worksheet ' Target Worksheet
Dim Rng As Range ' Copy Range (in 1st and 2nd Source Worksheet)
Dim FNR As Long ' First Not Used Row
' Create references to all Worksheets
With ThisWorkbook
Set ws1 = .Worksheets("Sheet3")
Set ws2 = .Worksheets("Sheet4")
Set wsT = .Worksheets("Sheet5")
End With
' Calculate First Not Used Row in first column of Target Worksheet.
FNR = wsT.Cells(wsT.Rows.Count, 1).End(xlUp).Offset(1).Row
' Calculate Copy Range in 1st Source Worksheet
Set Rng = ws1.Range(ws1.Range("A3"), ws1.Range("A3").End(xlDown))
' Copy Copy Range in 1st Source Worksheet to first column of Target
' Worksheet.
Rng.Copy wsT.Cells(FNR, 1)
' Calculate First Not Used Row in first column of Target Worksheet.
FNR = wsT.Cells(wsT.Rows.Count, 1).End(xlUp).Offset(1).Row
' Calculate Copy Range in 2nd Source Worksheet
Set Rng = ws2.Range(ws2.Range("A3"), ws2.Range("A3").End(xlDown))
' Copy Copy Range in 2nd Source Worksheet to first column of Target
' Worksheet.
Rng.Copy wsT.Cells(FNR, 1)
End Sub