簡體   English   中英

打開另一個現有的 Excel 文件 - 添加數據然后重新保存然后另存為 PDF

[英]Open Another Existing Excel File -Add data then resave then saveas PDF

所以我有一個 VBA 項目,我想要做的是從我的用戶表單中打開一個現有文件(待定數據輸入)。 添加從我的用戶表單收集的數據,打開添加新數據,然后保存,然后另存為 PDF。 這就是我想出的,我不想看到 excel,因為兩個 excel 都應該隱藏,我只想看到我的表格

Sub OpenDocument4()
Dim wsh As Worksheet
Dim wb As Workbook
Dim wb1 As Workbook
Set wb1 = ActiveWorkbook
Dim i As Long
Dim lngEndRowInv As Long
Dim FileName1, FileName2 As String
Dim var1
Dim var2
Dim var3
var1 = frmsetup.tbIssuesRear60.Caption
var2 = frmsetup.tbActionsRear60.Caption
var3 = frmsetup.tbOwnerRear60.Caption
Application.Visible = False
Application.ScreenUpdating = False
FileName2 = "C:\MiltonAuditAppsCenter\SEAT AUDIT\TEMP DOCUMENTS\" & "SEQ-" &           frmsetup.lblsequence.Caption & " " & frmsetup.lbldate.Caption & ".xlsm"
FileName1 = "SEQ-" & frmsetup.lblsequence.Caption & " " & frmsetup.lbldate.Caption & ".pdf"

Set wb = Workbooks.Open(FileName2)
Set wsh = wb.Worksheets("ACTIONS")
Worksheets("ACTIONS").Range("E20").Value = var1
Worksheets("ACTIONS").Range("E22").Value = var2
Worksheets("ACTIONS").Range("J21").Value = var3
Application.Visible = False
Application.ScreenUpdating = False
With Sheets(Array("END RESULTS", "DRIVER SEAT", "PASSENGER SEAT", "40% SEAT", "60% SEAT", "RSC SEAT", "ACTIONS")).Select
 ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
     FileName:="H:\APPLICATIONS\SEAT AUDIT\QUERY RESULTS\SEAT AUDIT - PDF\" & FileName1, _
     Quality:=xlQualityStandard, _
     IncludeDocProperties:=True, IgnorePrintAreas:=False,     OpenAfterPublish:=False
End With
wb.Close savechanges:=False

End Sub

這看起來應該可以工作,但是明確處理您的Workbook對象可能不會有什么壞處,而且,由於您已經將Worksheets("ACTIONS") ACTIONS Worksheets("ACTIONS")分配給了wsh變量,您應該使用它來代替硬編碼Worksheets("ACTIONS").Range(...).Value賦值。

Sub OpenDocument1()
Dim wsh As Worksheet
Dim wb as Workbook      '## The workbook you want to open
Dim i As Long
Dim lngEndRowInv As Long
Dim FileName As String
Application.Visible = False
Application.ScreenUpdating = False
FileName = "C:\MiltonAuditAppsCenter\SEAT AUDIT\TEMP DOCUMENTS\" & "SEQ-" & frmsetup.lblsequence.Caption & " " & frmsetup.lbldate.Caption & ".xlsm"
Set wb = Workbooks.Open(FileName)
Set wsh = wb.Worksheets("ACTIONS")
wsh.Range("E20").Value = frmReviewPDFPending.tbIssuesRear60.Text
wsh.Range("E22").Value = frmReviewPDFPending.tbActionsRear60.Text
wsh.Range("J21").Value = frmReviewPDFPending.tbOwnerRear60.Text
wb.Sheets(Array("END RESULTS", "DRIVER SEAT", "PASSENGER SEAT", "40% SEAT", "60% SEAT", "RSC SEAT", "ACTIONS")).ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
    "H:\APPLICATIONS\SEAT AUDIT\QUERY RESULTS\SEAT AUDIT - PDF\" & FileName1, Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
    False
wb.Close savechanges:=True
Application.Visible = True
Application.ScreenUpdating = True
End Sub

注意:如果您在使用ExportAsFixedFormat遇到問題,只需恢復到您的原始方法:

 With Sheets(Array("END RESULTS", "DRIVER SEAT", "PASSENGER SEAT", "40% SEAT", "60% SEAT", "RSC SEAT", "ACTIONS")).Select
     ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
         FileName:= "H:\APPLICATIONS\SEAT AUDIT\QUERY RESULTS\SEAT AUDIT - PDF\" & FileName1, _
         Quality:=xlQualityStandard, _
         IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= False
 End With

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM