Excel 将工作表从关闭的工作簿复制到活动工作簿工作表,并提供说明

Excel 将工作表从关闭的工作簿复制到活动工作簿工作表,并提供说明,excel,vba,import,copy-paste,Excel,Vba,Import,Copy Paste,我知道这可能是非常基本的,但我找不到一个一致的代码 我正在尝试将共享驱动器位置上已关闭文件中的第一张也是唯一一张工作表复制到要从中运行宏的活动工作簿的第一张工作表中 如果有人可以请分享任何帮助与解释的代码的步骤,这将是伟大的 谢谢VBA Excel程序员最有用的功能之一是Excel宏记录器。我经常使用记录器学习Excel如何编写代码来实现我通过鼠标单击和菜单选择执行的操作 开门见山。假设我的源工作簿名为katy_movies.xlsx,包含已观看/喜爱的电影标题列表和各种单元格格式。假设我打开了

我知道这可能是非常基本的,但我找不到一个一致的代码

我正在尝试将共享驱动器位置上已关闭文件中的第一张也是唯一一张工作表复制到要从中运行宏的活动工作簿的第一张工作表中

如果有人可以请分享任何帮助与解释的代码的步骤,这将是伟大的


谢谢

VBA Excel程序员最有用的功能之一是
Excel宏记录器
。我经常使用记录器学习Excel如何编写代码来实现我通过鼠标单击和菜单选择执行的操作

开门见山。假设我的源工作簿名为katy_movies.xlsx,包含已观看/喜爱的电影标题列表和各种单元格格式。假设我打开了该电子表格,并希望将其复制并粘贴(保留源格式)到其他工作簿中的空白工作表中。下面是宏记录器根据我的鼠标点击和菜单选择“编写”的全部代码(我做了2次调整)

注意:我的原始解决方案无法打开封闭源代码工作簿。下面是这样做的代码,作为奖励,在复制/粘贴操作后关闭源代码:

Sub Macro3()
'
' Macro3 Macro  (recorded by excel macro recorder)
'
    Workbooks.Open Filename:="\path\to\katy_movies.xlsx"
End Sub

Sub Macro2()
'
' Macro2 Macro
'
    Macro3
    Windows("katy_movies.xlsx").Activate
    Cells.Select
    Selection.Copy
    Windows("Book1").Activate
    Range("A1").Select      ' I manually added this line to ensure a valid paste locn
                            ' for an entire worksheet
    Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
    Range("A1").Select      ' Manually added this line to unselect all cells following
                            ' paste operation.

    Range("A1").Copy        ' Effectively empty clipboard to stop Excel from whining
                            ' about the next Close operation.
    Windows("katy_movies.xlsx").Close  ' close the briefly opened spreadsheet

    ' force focus back to original worksheet
    Windows("Book1").Activate
End Sub

我再怎么强调宏记录器的有用性也不为过。…

注意:你需要打开关闭的工作簿才能访问它的工作表-快速的谷歌搜索应该会产生一系列关于如何实现你想要做的事情的结果。谢谢-我对VBA还是很陌生,并尝试过谷歌搜索,但它会产生很多不同的方法,我很喜欢没有成功,所以我尝试在这个论坛上发帖。很高兴在实践中学习,但不确定您是否能为我指出正确的方向。这里有一些链接可以帮助您找到正确的方向-请务必阅读文档,如果遇到问题,请用谷歌搜索该问题(如果仍然不清楚,请在这里问一个特定的问题)。这些将遵循您的代码应该遵循的基本流程:,并对每个流程逐一进行一些尝试和错误处理,然后构建您的应用程序。是的,确实如此-非常感谢!答案不错(对我来说很有帮助),但它遗漏了问题的一个关键部分——我正试图复制一个封闭文件中的第一张也是唯一一张纸。。。。你的回答没有解决这个问题,因此也没有真正回答这个问题!更新了打开已关闭工作簿的代码。