VBA复制工作簿A中某个区域选择性粘贴值和数字格式到工作簿B中某个固定区域并将工作簿B另存为当前路径下xlsx格式
下面是一个示例VBA代码,可以实现将工作簿A中的某个区域选择性地粘贴值和数字格式到工作簿B中的固定区域,并将工作簿B另存为.xlsx格式。
Sub CopyAndPaste()
Dim wbA As Workbook
Dim wbB As Workbook
Dim wsA As Worksheet
Dim wsB As Worksheet
Dim rngCopy As Range
Dim rngPaste As Range
Dim filePath As String
'设置工作簿A、B和工作表A、B
Set wbA = ThisWorkbook
Set wsA = wbA.Worksheets("Sheet1")
Set wbB = Workbooks.Add
Set wsB = wbB.Worksheets("Sheet1")
'设置要复制和粘贴的区域
Set rngCopy = wsA.Range("A1:B10")
Set rngPaste = wsB.Range("C1")
'复制值和数字格式
rngCopy.Copy
rngPaste.PasteSpecial xlPasteValues
rngPaste.PasteSpecial xlPasteFormats
'关闭剪贴板
Application.CutCopyMode = False
'另存为.xlsx格式
filePath = ThisWorkbook.Path & "\" & "工作簿B.xlsx"
wbB.SaveAs filePath, FileFormat:=xlOpenXMLWorkbook
'关闭工作簿B
wbB.Close SaveChanges:=False
'释放对象
Set rngCopy = Nothing
Set rngPaste = Nothing
Set wsA = Nothing
Set wsB = Nothing
Set wbA = Nothing
Set wbB = Nothing
End Sub
请注意,在运行此代码之前,请确保将工作簿A中的区域和工作簿B中的固定区域替换为您的实际区域。此外,请确保将“Sheet1”替换为工作簿A和B中实际的工作表名称。
最后,这段代码将工作簿B另存为当前路径下的.xlsx格式,并将其命名为“工作簿B.xlsx”。如果您想要使用不同的文件名,请相应地更改filePath变量的值
原文地址: https://www.cveoy.top/t/topic/h21V 著作权归作者所有。请勿转载和采集!