2017-07-26 14 views
0

これはコミュニティにとっては簡単なことです。VBA:新しいワークブックにワークシートとして保存

新しいワークブックに1つのワークシートを保存しようとしています(VBAは新しいワークブックを作成する必要があります)。 コードが実行されていて、新しいブックが必要なデータとともにポップアップしています。名前を選択してファイルを保存すると、新しいブックが見つからない場合は、(Book1または任意の自動車が移入されます。

ダイアログウィンドウが開いたとき、私は自動移入するために名前を付けて保存のための希望、それは二つのセルに参照している(すなわち。$ A $ 11 $ B $ 11)と、元のブックインチ

ここで

は私の非常に基本的なVBAが動作していない参照コードで私の最初の試みとなりました。任意の助けてくれてありがとう!!!

また、私はどのように上のように100%確実ではないコミュニティに新たなんですパス不便な点をお詫び申し上げます。任意のヒントを共有してください:)ここ

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-sheets-to-a-new-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 
関連する問題