Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Acrobat PDF Formularfelder mit Excel ausfüllen

Acrobat PDF Formularfelder mit Excel ausfüllen
26.04.2024 11:38:46
Thomas
Hallo,
ich habe in unserer Druckerei einen Palettenzettel mit einer Excel Datei verknüpft und mich aus VBA Skripten hier bedient. Nur leider funktioniert das Skript nicht mit Acrobat Reader. An meinem PC mit Acrobat Pro funktioniert es.



Public Sub Fill_PDF_Form()

Dim saveok
Dim gApp As Acrobat.CAcroApp
Dim AvDoc As Acrobat.CAcroAVDoc
Dim gPDDoc As Acrobat.CAcroPDDoc
Dim DOC_FOLDER
Dim x As Boolean
Dim sDoc As Object
DOC_FOLDER = ActiveWorkbook.Path
Set gApp = CreateObject("AcroExch.App")
Set gPDDoc = CreateObject("AcroExch.PDDoc")
Set AvDoc = CreateObject("AcroExch.AVDoc")
Dim FormApp As AFORMAUTLib.AFormApp
Dim AcroForm As AFORMAUTLib.Fields
Dim Field As AFORMAUTLib.Field
x = AvDoc.Open(DOC_FOLDER & "\Palettenzettel.pdf", "")
Set FormApp = CreateObject("AFormAut.App")
Dim letztezeile As Integer

letztezeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row

Dim Ord As String
Ord = ActiveWorkbook.Path & "\Export"
If Dir(Ord, vbDirectory) = "" Then MkDir Ord
Ord = Ord & "\Export"


'Schleife
Dim i As Long
For i = 2 To letztezeile

With FormApp
.Fields("AuftragsNr").Value = Sheets(1).Cells(i, 1)
.Fields("holzhaltig").Value = Sheets(1).Cells(i, 2)
.Fields("holzfrei").Value = Sheets(1).Cells(i, 3)
.Fields("Kunde").Value = Sheets(1).Cells(i, 4)
.Fields("Objekt").Value = Sheets(1).Cells(i, 5)
.Fields("Form").Value = Sheets(1).Cells(i, 6)
.Fields("Lieferschein-Nr").Value = Sheets(1).Cells(i, 7)
.Fields("Auflage").Value = Sheets(1).Cells(i, 8)
.Fields("Soll").Value = Sheets(1).Cells(i, 9)
.Fields("Ist").Value = Sheets(1).Cells(i, 10)
.Fields("Paletten-Nr").Value = Sheets(1).Cells(i, 11)
.Fields("Paletten-Nr-Gesamt").Value = Sheets(1).Cells(i, 12)
.Fields("Datum").Value = Sheets(1).Cells(i, 13)
'...
End With
AvDoc.PrintPages 0, 1, 2, 1, 1
Set sDoc = AvDoc.GetPDDoc
'saveok = sDoc.Save(1, DOC_FOLDER & "\Palettenzettel" & "_" & Sheets(1).Cells(i, 1) & "_F" & Sheets(1).Cells(i, 6) & "_L" & Sheets(1).Cells(i, 7) & "_Pal" & Sheets(1).Cells(i, 11) & ".pdf")
saveok = sDoc.Save(1, ActiveWorkbook.Path & "\Export" & "\Palettenzettel" & "_" & Sheets(1).Cells(i, 1) & "_F" & Sheets(1).Cells(i, 6) & "_L" & Sheets(1).Cells(i, 7) & "_Pal" & Sheets(1).Cells(i, 11) & ".pdf")
Next
AvDoc.Close (1)
gApp.Exit



End Sub
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Du hast den Palettenzettel nicht gezeigt, ts ts ts...
26.04.2024 12:14:05
JoWE
AW: Acrobat PDF Formularfelder mit Excel ausfüllen
26.04.2024 12:26:57
Armin
Hallo Thomas,
so weit mir bekannt geht das nur mit der Pro Version! Du brauchst die Object-Library von Acrobat. Und die hat der Reader nicht.
Aber warum den Umweg eine PDF kannst Du auch direkt mit VBA im Excel erzeugen.
ActiveSheet.PageSetup.PrintArea = "A2:M20" 'muss nicht sein wenn Du dafür eine extra Seite einrichtest

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=sPDFPath & sPDFName & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=True, _
OpenAfterPublish:=False


Gruß Armin

Anzeige
AW: Acrobat PDF Formularfelder mit Excel ausfüllen
26.04.2024 12:56:58
Thomas
Weil ich Formularfelder in Acrobat mit Excel fülle... und PDF ist hier nicht zugelassen hochzuladen.
AW: ...aber Zip-Archiv geht!!!
26.04.2024 15:50:12
JoWE
AW: ...aber Zip-Archiv geht!!!
26.04.2024 20:44:53
JoWE
Hallo Thomas,

habe gerade einiges versucht, aber tatsächlich ist es von mir mit dem Acrobat Reader nicht hinzubekommen;
dafür ist offenbar wohl unabdingbar die Vollversion Acrobat erforderlich.
Ohne die Vollversion ließe sich das Formular mit Word nachbauen und nach dem Ausfüllen der entsprechenden Formularfelder als PDF speichern.
Dabei sind dann jedoch die die Daten in den "Feldern" der PDF-Datei nicht mehr mit dem Adobe-System zu verwalten bzw. in eine Datenbank zu übernehmen.

Nun, vielleicht kann jemand das doch ohne die Vollversion realisieren, ich jedoch nicht, sorry.

Gruß
Jochen


Anzeige
AW: ...aber Zip-Archiv geht!!!
28.04.2024 18:50:57
Oberschlumpf
Hi Thomas,

siehe Bild...
Userbild
...auf meinem PC ist Acrobat Pro auch - nicht - vorhanden.
Nach Start deiner Datei, bzw des Makros unterbricht dieses schon in der 2. Dim-Zeile + würde auch in den Dim-Zeilen 3+4 nicht weitermachen.
Weil Acrobat Pro - nicht - vorhanden ist.

In dem Moment, in dem du automatisierst versuchst, einer PDF-Datei Daten hinzuzufügen, ist das wie das Bearbeiten einer PDF-Datei = Bearbeiten von PDF's ist nun mal Acrobat Pro vorbehalten - Ausnahme das manuelle (per Hand)Ausfüllen von Datenfeldern in einer PDF-Datei...dies ist auch mit einem PDF-Reader möglich; dabei muss es nicht mal der originale Acrobat-Reader sein; ich z Bsp nutze seit Jahren Foxit-Reader.

2 Lösungsideen:

a) überrede deinen Chef, auch für den PC in der Druckerei eine Acrobat Pro-Version zu kaufen

b) verabschiede dich von der Verwendung von PDF-Dateien und erledige alles direkt in/mit Excel.

Ciao
Thorsten
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige