VBA:另存为已编辑的PDF文件

时间:2019-08-13 17:44:21

标签: excel vba pdf acrobat save-as

我当前正在打开,并使用Excel VBA编辑PDF文件。我用在Excel行中找到的数据编辑PDF文件。下面的代码:

class Setup(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        super(Setup, self).__init__(parent)
        self.setWindowIcon(QtGui.QIcon('icon.png'))
        self.initUI()

    def initUI(self):
        self.setWindowTitle('Auto-Annoucement - Setup')
        self.showMaximized()
        self.createTable()
        self.setupmon = QWidget()
        self.setup_layout = QVBoxLayout(self.setupmon)
        self.setup_layout.addWidget(self.tableViewmon)

    def createTable(self):
        self.modelmon = QtGui.QStandardItemModel(self)
        self.modelmon.setHorizontalHeaderLabels(self, ['Time', 'File Name'])
        self.tableViewmon = QtWidgets.QTableView(self)
        self.tableViewmon.setModel(self.modelmon)

if __name__ == '__main__':

    app = QtWidgets.QApplication(sys.argv)
    setup = Setup()
    setup.show()
    sys.exit(app.exec_())

这是我第一次使用VBA处理PDF,因此,我为我所走的路感到很自豪。我只是想不出如何用唯一的名称保存已编辑的PDF。我在线上找到了这行Sub WriteToAdobeFields() Dim AcrobatApplication As Acrobat.AcroApp Dim AcrobatDocument As Acrobat.AcroAVDoc Dim fcount As Long Dim aFieldName As String Dim pdfFilePath As String Dim outputFolderPath As String Dim WasSaved As Variant Dim wb As Workbook Dim ws As Excel.Worksheet Set wb = ActiveWorkbook Set ws = wb.Sheets("Entry Form") Set AcrobatApplication = CreateObject("AcroExch.App") Set AcrobatDocument = CreateObject("AcroExch.AVDoc") pdfFilePath = GetFolder("Select the Empty Form") outputFolderPath = GetFolder("Select the Folder to Place the Completed Forms") If AcrobatDocument.Open(pdfFilePath, "") Then AcrobatApplication.Show Set AcroForm = CreateObject("AFormAut.App") Set Fields = AcroForm.Fields Dim stringCreator As String fcount = Fields.Count Fields("agree_no").Value = ws.Range("C3").Text Fields("super_no").Value = ws.Range("F3").Text Fields("exp_date").Value = ws.Range("G3").Text stringCreator = ws.Range("I3") & Chr(10) & ws.Range("J3") Fields("supp_name").Value = stringCreator stringCreator = "" stringCreator = ws.Range("L3") & Chr(10) & ws.Range("M3") Fields("rec_name").Value = stringCreator stringCreator = "" Fields("sup_comm").Value = ws.Range("H3").Text Fields("rec_comm").Value = ws.Range("K3").Text stringCreator = ws.Range("n2").Text & ":" & Chr(10) & ws.Range("o2").Text & ":" & Chr(10) & ws.Range("p2").Text & ":" & Chr(10) & ws.Range("q2").Text & ":" & Chr(10) & ws.Range("r2").Text & ":" & Chr(10) & ws.Range("s2").Text & ":" & Chr(10) & ws.Range("t2").Text & ":" & Chr(10) & ws.Range("u2").Text & ":" & Chr(10) & ws.Range("v2").Text & ":" & Chr(10) & ws.Range("w2").Text & ":" & Chr(10) & ws.Range("x2").Text & ":" & Chr(10) & ws.Range("y2").Text & ":" & Chr(10) & ws.Range("z2").Text & ":" & Chr(10) & ws.Range("aa2").Text & ":" & Chr(10) & ws.Range("ab2").Text & ":" & Chr(10) & ws.Range("ac2").Text & ":" & Chr(10) & ws.Range("ad2").Text & ":" & Chr(10) & ws.Range("ae2").Text & ":" & Chr(10) & ws.Range("af2").Text & ":" & Chr(10) & ws.Range("ag2").Text & ":" & Chr(10) & ws.Range("ah2").Text & ":" & Chr(10) & ws.Range("ai2").Text & ":" & Chr(10) & ws.Range("aj2").Text & ":" & Chr(10) & ws.Range("ak2").Text & ":" Fields("basis").Value = stringCreator stringCreator = "" stringCreator = ws.Range("n3").Text & Chr(10) & ws.Range("o3").Text & Chr(10) & ws.Range("p3").Text & Chr(10) & ws.Range("q3").Text & Chr(10) & ws.Range("r3").Text & Chr(10) & ws.Range("s3").Text & Chr(10) & ws.Range("t3").Text & Chr(10) & ws.Range("u3").Text & Chr(10) & ws.Range("v3").Text & Chr(10) & ws.Range("w3").Text & Chr(10) & ws.Range("x3").Text & Chr(10) & Chr(10) & ws.Range("y3").Text & Chr(10) & ws.Range("z3").Text & Chr(10) & ws.Range("aa3").Text & Chr(10) & ws.Range("ab3").Text & Chr(10) & ws.Range("ac3").Text & Chr(10) & Chr(10) & ws.Range("ad3").Text & Chr(10) & ws.Range("ae3").Text & Chr(10) & ws.Range("af3").Text & Chr(10) & ws.Range("ag3").Text & Chr(10) & ws.Range("ah3").Text & Chr(10) & ws.Range("ai3").Text & Chr(10) & ws.Range("aj3").Text & Chr(10) & ws.Range("ak3").Text Fields("est_reimbursement").Value = stringCreator stringCreator = "" WasSaved = AcrobatDocument.Save(PDSaveFull, "whereIWantItSaved") Else MsgBox "failure" End If End Sub ,但是我不确定它是否旧,因为它没有说WasSaved = AcrobatDocument.Save(PDSaveFull, "whereIWantItSaved")具有AcrobatDocument功能。

0 个答案:

没有答案