2016-06-17 6 views
0

顧客と製品のデータを保持する納品書の表があります。私はクリックしたときよりもボタンが欲しいと言います。「印刷だけでなく保存しますか? モジュールが単独で実行されたときに正常に動作するファイルを保存するためのマクロを記録しましたが、下のコードにすべてが含まれていると「コンパイルエラー:Expected End Sub」というエラーが表示されます。 else部分もそれ自身でうまく動作します。このエラーを解決してコードを実行するにはどうすればよいですか?おかげExcel VBA - モジュール内でマクロを実行する方法

Private Sub CommandButton1_Click() 
MsgBox "Do you want to Save as well as Print?", vbYesNo 
If answer = vbYes Then 
Sub mac_SaveNote() 
ChDir "C:\Users\User\Desktop\DeliveryNotes" 
ActiveWorkbook.SaveAs Filename:="C:\Users\User\Desktop\DeliveryNotes\" & Range("A11"), _ 
    FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False 
End Sub 
Else 
Sheets("Note 1").PrintOut , Copies:=2 'prints 2 copies of note1 
Range("A11:J16").ClearContents   'clears customer data 
Range("A18:I42").ClearContents   'clears product data 
End If 
End Sub 

答えて

0

二つの方法:

は、最初のうち、サブを移動し、単にそれを呼び出す

:サブパーツを

Private Sub CommandButton1_Click() 
MsgBox "Do you want to Save as well as Print?", vbYesNo 
If answer = vbYes Then 

    mac_SaveNote 

Else 
    Sheets("Note 1").PrintOut , Copies:=2 'prints 2 copies of note1 
    Range("A11:J16").ClearContents   'clears customer data 
    Range("A18:I42").ClearContents   'clears product data 
End If 
End Sub 

Sub mac_SaveNote() 
ChDir "C:\Users\User\Desktop\DeliveryNotes" 
ActiveWorkbook.SaveAs Filename:="C:\Users\User\Desktop\DeliveryNotes\" & Range("A11"), _ 
    FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False 
End Sub 

するか、であるとしてだけでコードを実行し、削除

Private Sub CommandButton1_Click() 
MsgBox "Do you want to Save as well as Print?", vbYesNo 
If answer = vbYes Then 

    ChDir "C:\Users\User\Desktop\DeliveryNotes" 
    ActiveWorkbook.SaveAs Filename:="C:\Users\User\Desktop\DeliveryNotes\" & Range("A11"), _ 
     FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False 

Else 
    Sheets("Note 1").PrintOut , Copies:=2 'prints 2 copies of note1 
    Range("A11:J16").ClearContents   'clears customer data 
    Range("A18:I42").ClearContents   'clears product data 
End If 
End Sub 
+0

エラーは消えましたが、文書は保存されていません。コード実行後に内容が削除されたセルがファイル名であるかどうかはわかりません。 –

関連する問題