我已经弄清了大部分这种情况,但悬挂我的部分是能够粘贴条件格式。Excel - 从条件格式化的其他工作簿复制完整
我希望能够打开工作簿,运行VBA脚本来打开另一个工作簿,从中复制范围,然后将其粘贴到原始工作簿。
最成功的我已经被录制宏,并做到这一点: 与原来的,目标工作簿打开...
- 打开源工作簿
- 复制范围A1:X105
- 关闭源工作簿
- 粘贴到工作表的目标工作簿中名为 “temp” 的
问题是源工作簿包含条件格式,并且如果源工作簿在粘贴到目标工作簿之前已关闭,则不会粘贴条件格式。
因此,无论我需要找到一种方法来粘贴数据与条件格式,或者我需要能够切换回目标工作簿之前关闭源工作簿。这是一个需要使用不同的目标工作簿多次运行的进程,因此VBA代码无法引用目标的工作簿文件名。源工作簿将始终具有相同的路径。
在网站搜索中,我只能找到指定两个工作簿路径的解决方案。
这就是我现在所拥有的:
Sub CopyData()
Application.DisplayAlerts = False
Workbooks.Open filename:="source.xlsx", _
UpdateLinks:=3
Range("A1:X105").Select
Selection.Copy
ActiveWindow.Close
Sheets("Temp").Select
ActiveSheet.Paste
Application.DisplayAlerts = True
End Sub
我想什么,我需要落实到这是声明的目标工作簿作为一个变量。有人可以帮助吗?
所以,只是听起来像你的脚本必须先关闭第一个从源工作簿粘贴到目标工作簿。即使没有指定工作簿名称,如果将其设置为工作簿变量,这也不是问题。请提供您迄今为止开发的代码以获得进一步的帮助。 – nbayly
'子了CopyData() Application.DisplayAlerts =假 Workbooks.Open文件名:= “source.xlsx”,_ UpdateLinks:= 3 范围。( “A1:X105”)选择 Selection.Copy 的ActiveWindow。关闭 表(“Temp”)。选择 ActiveSheet.Paste Application.DisplayAlerts = True End Sub – Robby
对不起。我不知道如何在评论中做预格式化的文字。 – Robby