我有一個文件夾,裏面有幾個需要導出爲pdf格式的excel工作簿。每個工作簿的每張紙上都有一個徽標(.bmp)。當我使用下面的代碼時,pdfs只在第一頁上丟失了標識(它有一個灰色的佔位符)。其餘的頁面有徽標。Excel VBA-第一張圖片在導出前不會加載
我的代碼:
Option Explicit
Sub dsPdf()
Dim path As String
Dim wbName As String
Dim tWb As Workbook
Dim t As Single
path = ThisWorkbook.path
wbName = Dir(path & "\*.xlsx")
Application.ScreenUpdating = True
Do While wbName <> ""
Set tWb = Workbooks.Open(path & "\" & wbName)
tWb.Sheets(Array(1, 2, 3)).Select
DoEvents
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
path & "\" & Left(wbName, Len(wbName) - 4) & "pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
tWb.Close False
wbName = Dir
Loop
End Sub
我使用ActiveSheet.RefreshAll
和DoEvents
,以及增加一個Timer
/Do While
循環嘗試。當我在導出語句之前放置Stop
時,第一張表格正確顯示徽標。但是,當我把Aplication.Wait(Now...
標誌不顯示。
任何想法? 謝謝
如果你用'F8'來瀏覽宏,它是否仍然在第一頁上做?也許你可以看到爲什麼,如果是這樣,通過逐步?檢查打印區域,也許你的第一頁意外地從你的標誌下面開始? – BruceWayne
如果我經過,標誌顯示正確。另外,當我運行腳本時,我仍然可以看到徽標應該在的位置,但是徽標不是帶有(我認爲是)「圖片未找到」符號的灰色框。所以我相信打印區域是正確的 – abailie3
嗯,所以我可以在我的電腦上試試,工作表中的.bmp究竟在哪裏?什麼細胞/多大等? – BruceWayne