VBA(Excel)复制工作表到新的工作簿

现在我正在尝试创build一个应该从我的工作簿复制一个工作表的Excelmacros。 这个工作表应该被保存为一个新的Excel文件,这个文件用单元格B1中的值命名。 一切工作到目前为止。 问题是:我希望副本是备份。 所以表(复制)中的值不应该连接到原始表。 所以要简短:我只是想复制格式+值,而不是表格中的公式。 你有什么想法,我可以做这个工作?

Private Sub Workbook_AfterSave(ByVal Success As Boolean) Dim FName As String Dim FPath As String Dim wbkExport As Workbook Dim shtToExport As Worksheet FPath = "C:\Users\User\Desktop\Artikelnummern" FName = Worksheets("Test").Cells(1, 2).Value Set shtToExport = ThisWorkbook.Worksheets("Test") Set wbkExport = Application.Workbooks.Add shtToExport.Copy Before:=wbkExport.Worksheets(wbkExport.Worksheets.Count) Application.DisplayAlerts = False 'Possibly overwrite without asking wbkExport.SaveAs Filename:=FPath & "\" & FName & ".xlsx" Application.DisplayAlerts = True wbkExport.Close SaveChanges:=False End Sub 

更换你的线路:

 shtToExport.Copy Before:=wbkExport.Worksheets(wbkExport.Worksheets.Count) 

附:

 shtToExport.Cells.Copy wbkExport.Worksheets(wbkExport.Worksheets.Count - 1).Range("A1").PasteSpecial xlPasteValues wbkExport.Worksheets(wbkExport.Worksheets.Count - 1).Range("A1").PasteSpecial xlPasteFormats