我目前正在嘗試修改Visual Basic宏以僅將電子表格保存在已填充單元格的工作簿中。只保存已填充單元格的填充電子表格爲PDF
當前宏只是將整個16工作簿保存爲PDF,但最多9個這些工作表有時會保留未完成狀態,但仍然保存。
我希望宏自動檢查這些表是否已經填充,一旦點擊'保存'按鈕,然後繼續只保存填充(完整)工作表爲PDF。
我會大規模appricate任何幫助!
下面的代碼是宏保存整個工作簿時當前的工作方式。 (有一個IF語句檢查之前將其保存爲PDF格式。)
Sub SaveAsPDF()
With ThisWorkbook.Sheets("COVERPage1PRINT")
If (Len(.Range("C24")) = 0) Then
MsgBox "Ensure Serial Number or Stamp number are filled."
Exit Sub
ElseIf (Len(.Range("H17")) = 0) Then
MsgBox "Ensure Serial Number or Stamp Number are filled."
Exit Sub
Else
ChDir _
"P:\Cells\Spool & Sleeves Cell\Flow Plot Records\EFA\Saved EFA PDF Archive"
fname = Sheets("COVERPage1PRINT").Range("H17")
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"P:\Cells\Spool & Sleeves Cell\Flow Plot Records\EFA\Saved EFA PDF Archive\" & fname, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
End If
End With
End Sub
謝謝,我已經試過了,但我似乎無法指定被定義爲填充的表單中的單元格,我還假設這就是您在說'取決於您的填充定義時的含義張? 9個薄片中的每一個與設置佈局相同,並且單元:D4:9,E10:15,F4:9,G10:15,H4:9,I10:15,J4:9,K10:15是這樣的單元需要完成。 – TPK 2014-10-07 14:27:10
我認爲用** WorksheetFunction.CountA(範圍(「D4:D9,E10:E15,F4:F9,G10:G15,H4:H9,」)替換**。UsedRange.Address <>「$ A $ 1」 I10:I15,J4:J9,K10:K15「))= 48 **應該做這個工作... – ravishchhabra 2014-10-07 17:29:29
請讓我知道如果能夠嘗試這種解決方案。如果您有任何問題,我會很樂意回答。 – ravishchhabra 2014-10-08 05:45:47