Excel 将打开的工作簿中的单元格复制到另一个工作簿中

Excel 将打开的工作簿中的单元格复制到另一个工作簿中,excel,vba,Excel,Vba,在我的第一个活动工作簿中,A列有一个数字列表,从单元格A1开始,每次都列出不同数量的行 我想将包含信息的A列所有单元格复制到另一个工作簿中(如果第二个工作簿在此过程中可以保持关闭状态,则更好) 我希望在第二个工作簿中的粘贴位置是第一个空行中的A列。i、 e.我希望第二个工作簿是第一个工作簿的a列的所有数据的列表。将此代码粘贴到工作簿的VBA编辑器中包含源数据的新模块中(打开VBA编辑器:ALT+F11),并运行宏“CopyTootherWorkbook” 运行之前,请指定目标工作簿路径,提示在代

在我的第一个活动工作簿中,A列有一个数字列表,从单元格A1开始,每次都列出不同数量的行

我想将包含信息的A列所有单元格复制到另一个工作簿中(如果第二个工作簿在此过程中可以保持关闭状态,则更好)


我希望在第二个工作簿中的粘贴位置是第一个空行中的A列。i、 e.我希望第二个工作簿是第一个工作簿的a列的所有数据的列表。

将此代码粘贴到工作簿的VBA编辑器中包含源数据的新模块中(打开VBA编辑器:ALT+F11),并运行宏“CopyTootherWorkbook”

运行之前,请指定目标工作簿路径,提示在代码中

Sub CopyToAnotherWorkbook()

Application.ScreenUpdating = False

Dim wb As Workbook: Set wb = ThisWorkbook
Dim ws As Worksheet: Set ws = wb.ActiveSheet
Dim LastRow_wb%: LastRow_wb = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
Dim arr() As Variant
ReDim arr(0 To LastRow_wb - 1)

For i = 1 To LastRow_wb
    arr(i - 1) = ws.Cells(i, 1)
Next i

Dim wb2 As Workbook: Set wb2 = Workbooks.Open("C:\Book2.xlsx") ' <- Paste your Link to the Workbook here!

Dim ws2 As Worksheet: Set ws2 = wb2.Sheets(1)
Dim LastRow_wb2%: LastRow_wb2 = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row + 1

If LastRow_wb2 = 2 Then
    LastRow_wb2 = 1
End If

ws2.Range("A" & LastRow_wb2 & ":A" & LastRow_wb2 + UBound(arr)).Value = WorksheetFunction.Transpose(arr)

Application.ScreenUpdating = True
wb2.Close True
Set ws2 = Nothing
Set wb2 = Nothing
Set ws = Nothing
Set wb = Nothing

End Sub
将副本复制到其他工作簿()
Application.ScreenUpdating=False
将wb设置为工作簿:设置wb=ThisWorkbook
将ws设置为工作表:设置ws=wb.ActiveSheet
Dim LastRow_wb%:LastRow_wb=ws.Cells(ws.Rows.Count,“A”).End(xlUp).Row
Dim arr()作为变量
ReDim arr(0到最后一行\u wb-1)
对于i=1至最后一行
arr(i-1)=ws.Cells(i,1)
接下来我

Dim wb2 As工作簿:Set wb2=Workbooks.Open(“C:\Book2.xlsx”)“欢迎来到StackOverflow-这实际上是一个非常常见的问题,所以我建议您在google上搜索一下,以找到您想要的内容。这是一个非常好的开始,Smartini!非常感谢你的帮助!还有一件事,从中复制单元格的数据每次都会更改,即我无法将宏保存在那里,如果我将其保存在个人宏工作簿中,是否有方法将第一个工作簿设置为运行宏的工作簿?我不太明白您的问题。您可以将此代码添加到excel中的个人工作簿中,每次启动excel后会自动打开(隐藏)-您的意思是,对吗?VBA代码将从activesheet复制所有日期。您可以打开任何源Excel,在后台也可以打开个人xlsb,您可以切换到源Excel,运行宏,所有内容都将复制到Excel工作簿中,并以代码写入。如果不希望固定目标,也可以添加“文件选择器”。