excel - 将工作簿中特定工作表中的内容复制到同一目录中另一个工作簿中的另一个特定工作表
问题描述
背景:
我在同一个目录中有两个工作簿,每个工作簿都有不同的工作表。
我想打开 book2.xlsx,执行 VBA,从 book1.xls 中的“sheet1”复制整个内容。在此之后, book1.xls 应该会自动关闭。
我有一个代码,它将内容移动到工作表旁边,然后我必须将此工作表重命名为所需的工作表。问题在于,另一张表中的公式无法按预期工作。代码如下,
Sub XLVBACopyFiles()
Dim MonthlyWB As Variant
Dim FileName As String
FileName = ActiveWorkbook.Name
Path = ActiveWorkbook.Path & "\"
Application.DisplayAlerts = False
Application.EnableEvents = False
'Copy the sheet1 next to sheet2 in the current workbook
Application.Workbooks.Open (Path & "book1.xls")
Sheets(Array("sheet1")).Select
Sheets("sheet1").Activate
Sheets(Array("sheet1")).Move After:=Workbooks( _
FileName).Sheets("sheet2")
Application.EnableEvents = True
Application.DisplayAlerts = True
Workbooks(FileName).Save
' Workbooks(FileName).Close
End Sub
对此的任何帮助将不胜感激。
解决方案
如果您想要什么,根据您上面的评论,将内容粘贴到“sheet2 本身”,请更新上面的代码:
Application.Workbooks.Open (Path & "book1.xls")
Sheets(Array("sheet1")).Select
Sheets("sheet1").Activate
**Sheets(Array("sheet1")).Move After:=Workbooks( _
FileName).Sheets("sheet2")**
至
Application.Workbooks.Open (Path & "book1.xls")
Sheets(Array("sheet1")).Select
Sheets("sheet1").Activate
'Next 2 lines will select the range of content to be copied, and CTRL+C it. Edit it to your desire range
Range("A1:A5").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select ' In this line you should choose which cell to start pasting
ActiveSheet.Paste
此外,要关闭工作簿,请使用:
Workbooks("book1.xls").Close SaveChanges:=True
注意 SaveChanges 选项,如果要保存或不保存此工作簿,请选择 True/False
推荐阅读
- react-native - React Native 应用程序在关闭模式或操作表后神秘地冻结
- python - 使用 smtp 从 Python 发送电子邮件时如何添加主题和变量?
- python - 寻求理解 Python Synta 代码错误
- swift - 使用 RX 只调用一次 refreshtoken WS
- r - 检查列中的数字是否按某个值升序(R数据框)
- python - 在 Python 中将 Dataframe 转换为嵌套字典
- css - 防止长列表项移动到项目符号下方
- python-3.x - Python3如何识别服务器使用的HTTP版本
- javascript - 如何摆脱 JS 控制台中未定义/未定义的消息
- reactjs - 如何在antd的表单提交上获取子值?