2017-07-26 619 views
0

希望這對社區來說很簡單。VBA:另存爲工作表到新的工作簿

我試圖將單個工作表保存到一個新的工作簿(VBA應創建一個新的工作簿)。 代碼正在運行,新工作簿彈出所需的數據,另存爲對話窗口也會打開,但是當我選擇名稱並保存文件時,不會在哪裏找到新工作簿保持打開狀態(Book1或任何自動填充。

我想了另存爲名稱自動填充對話窗口打開時,並已將其引用到兩個單元(即$ A $ 11 $ B $ 11),在原來的工作簿。

這是我非常基本的vba現在我的第一次嘗試在參考代碼是行不通的。 PAS請填寫完整的VBA代碼。給由此造成的不便深表歉意。請分享任何提示:)

Option Explicit 

    Sub SaveConsolidatedDemandData() 
    ' Macro2 Macro 
    'Dim NameFile As Variant 
      'With Worksheets("SO1") 
      'NameFile = .Range("M3") & "_" & .Range("C11") & "_" & .Range("B22") & ".xls" 
    'End With 

    Application.ScreenUpdating = False 
    ' 
    ' 
     Sheets("Consolidation").Select 
     Sheets("Consolidation").Copy 
     Application.GetSaveAsFilename 


    Application.ScreenUpdating = True 

    End Sub 
+0

退房此鏈接:[所有工作簿表複製到一個新的工作簿VBA(https://stackoverflow.com/questions/35094057/copy-all -workbook表到一個新工作簿-VBA) – Chuck

回答

1

這是一個宏顯示/做你在問什麼。根據需要更改工作簿的名稱以及表名稱:

Sub test() 
Dim wb, wbnew As Workbook 
Dim ws As Worksheet 
Dim filename As String 

Set wb = Workbooks(2) 'Name of the workbook you are copying from 
Set ws = wb.Sheets("Sheet1") 'Name of sheet you are copying 
filename = ws.Range("A11") & "_" & ws.Range("B11")& ".xlsm" 
'adds new workbook 
Set wbnew = Workbooks.Add 
wb.Activate 

'copies sheet to new workbook 
    wb.Sheets("Sheet1").Copy Before:=wbnew.Sheets(1) 

'Save as dialog box to save as excel file 
Application.Dialogs(xlDialogSaveAs).Show filename 

wbnew.Close 

End Sub 
相關問題