2017-07-07 66 views
-2

我正在嘗試在我的工作表之一上創建打印按鈕。我需要它來打印該工作表以及另一個工作表。這兩個名稱都是沒有引號的「預算表」和「上市承諾表」。打印按鈕在Excel 2016中使用宏?

我創建了按鈕沒有麻煩,但我知道很少關於宏,所以我仍然需要代碼。我嘗試了多種解決方案,但似乎沒有任何工作。我最近試圖使用這個Code,但它沒有奏效。我究竟做錯了什麼?我可以用什麼代碼代替?

Private Sub CommandButton1_Click() 

Function PrintMultipleSheets() 
    Sheets(Array("Budget Sheet", "Listed Commitments Sheet")).PrintOut 
End Function 

End Sub 
+0

而不是一個圖像,你可以在這裏粘貼代碼(和格式與代碼標籤,'{}')?另外,什麼不工作,是否有錯誤?它只是不打印等? – BruceWayne

+0

它出現一個錯誤,說「編譯錯誤:預期的結束小組」。 – Ash

+1

你把一個函數放在一個子裏面。我認爲你不能這樣做。 – BruceWayne

回答

0

It comes up with an error that says "Compile Error: Expected End Sub".

的代碼無法編譯,因爲你不能有一個Function一個Sub

搭線Function PrintMultipleSheets()擺脫End Function。它應該工作我認爲。你最終會得到:

Private Sub CommandButton1_Click() 

Sheets(Array("Budget Sheet", "Listed Commitments Sheet")).PrintOut 

End Sub 
0

只是一個簡單的循環與打印電話:

Sub forEachWs() 
    Dim ws As Worksheet 
    For Each ws In ActiveWorkbook.Worksheets 
     Call printSheet(ws) 
    Next 
End Sub 

Function pasteContents(ws as Worksheet) 
    ActiveSheet.PrintOut 
End Function