由于新问题而重新编辑帖子。这次,我解决了创建新工作簿的问题,但是现在,过去的特殊值无法正常工作。 我需要将8张相同的纸页复制到一张新纸上,每张纸都由不同的地理位置(例如欧洲,北美等)刷新。 我每次得到-在标题中指定的-运行时错误'1004'。我想将其粘贴为值,格式和列宽,因为初始工作表具有公式。如何更新VBA以使其正常工作? :-)预先感谢您的团队。
Sub Export()
Dim lRow, lCol As Integer
Workbooks.Add
Path = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\"
ActiveWorkbook.SaveAs Path & "GMCommits.xlsm", FileFormat:=XlFileFormat.xlOpenXMLWorkbookMacroEnabled
Workbooks("1").Activate
Sheets("1").Select
Range("E4").Value = "8"
Application.Calculate
Sheets("2").Select
lRow = Range("C" & Rows.Count).End(xlUp).Row
lCol = Cells(1, Columns.Count).End(xlToLeft).Column
For Each cell In Range(Cells(1, "C"), Cells(1, lCol))
Union(Range("C1:AE" & lRow), Range(Cells(1, cell.Column), Cells(lRow, cell.Column))).Copy
Workbooks("2").Activate
Range("A1").PasteSpecial Paste:=xlPasteFormats
Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
Range("A1").PasteSpecial Paste:=xlPasteColumnWidths
Next cell
Application.CutCopyMode = False
代码在第二个Range A1 pastespecial处停止。 VBA例程是从“地理位置”刷新8倍的值,然后将其复制粘贴到工作簿2中的新工作表中,然后通过“结束”子项完成该模块。