Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Skript um in PDF-Formular Optionsfelder auszuwählen

VBA Skript um in PDF-Formular Optionsfelder auszuwählen
24.10.2023 22:17:26
SanBernardo
Hallo! Ich brauche eure Unterstützung. Ich komme nicht von der Stelle.
Ich möchte über ein VBA Skript (Quelle Excel) in einem PDF Formular Textfelder ausfüllen. Das funktiniert schon. Aber ich muss auch Optionsfelder auswählen.
Hierfür habe ich noch keine Lösung.
Konkret geht es um die Optionsfeld-Gruppe "Stromanschluss" - hier gibt es 2 Optionsfelder: "Ja" und "Nein"
Es soll "Ja" ausgewählt werden.


Ich habe Adobe Acrobat Pro DC installiert.
Versucht habe ich mit folgendem Code: (Bei Set RadioButton = RadioGroup.Item(0) ' Index 0 für "JA") kommt immer Laufzeitfehler 438)
Muss ich den RadioButton noch irgendwie initialisieren?




Sub test()
Dim AcroApp As Object
Dim AVDoc As Object
Dim PDFForm As Object
Dim RadioGroup As Object
Dim RadioButton As Object

' Starten Sie Adobe Acrobat
Set AcroApp = CreateObject("AcroExch.App")

' Öffnen Sie das PDF-Formular
Set AVDoc = CreateObject("AcroExch.AVDoc")
AVDoc.Open "C:\Users\Bernard Weber\Documents\Persönlich\testo\NZV.pdf", ""
AVDoc.BringToFront


Set PDFForm = AVDoc.GetPDDoc

' Greifen Sie auf die Radio-Gruppe "Stromanschluss" zu (nach dem Feldnamen anpassen)
Set RadioGroup = PDFForm.GetJSObject().getField("Stromanschluss")
'Set RadioGroup = PDFForm.GetJSObject().getField("Stromanschluss")

' Wählen Sie das Optionsfeld "JA" aus (nach dem Feldnamen anpassen)
Set RadioButton = RadioGroup.Item(0) ' Index 0 für "JA"


RadioButton.Value = True
End Sub

Sub test() Dim AcroApp As Object Dim AVDoc As Object Dim PDFForm As Object Dim RadioGroup As Object Dim RadioButton As Object ' Starten Sie Adobe Acrobat Set AcroApp = CreateObject("AcroExch.App") ' Öffnen Sie das PDF-Formular Set AVDoc = CreateObject("AcroExch.AVDoc") AVDoc.Open "C:\Users\Bernard Weber\Documents\Persönlich\testo\NZV.pdf", "" AVDoc.BringToFront Set PDFForm = AVDoc.GetPDDoc ' Greifen Sie auf die Radio-Gruppe "Stromanschluss" zu (nach dem Feldnamen anpassen) Set RadioGroup = PDFForm.GetJSObject().getField("Stromanschluss") 'Set RadioGroup = PDFForm.GetJSObject().getField("Stromanschluss") ' Wählen Sie das Optionsfeld "JA" aus (nach dem Feldnamen anpassen) Set RadioButton = RadioGroup.Item(0) ' Index 0 für "JA" RadioButton.Value = True End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Skript um in PDF-Formular Optionsfelder auszuwählen
25.10.2023 18:03:49
bigmayo
Moin,

Dein Code ist schon gut, aber es gibt einige Anpassungen, die du vornehmen solltest, um das Optionsfeld in einem PDF-Formular auszuwählen. Hier ein Vorschlag zum ausprobieren:

Sub Test()

Dim AcroApp As Object
Dim AVDoc As Object
Dim PDDoc As Object
Dim RadioGroup As Object
Dim RadioButton As Object

' Starten Sie Adobe Acrobat
Set AcroApp = CreateObject("AcroExch.App")

' Öffnen Sie das PDF-Formular
Set AVDoc = CreateObject("AcroExch.AVDoc")
AVDoc.Open "C:\Pfad\zum\PDF-Formular.pdf", ""
AVDoc.BringToFront

Set PDDoc = AVDoc.GetPDDoc

' Greifen Sie auf die Radio-Gruppe "Stromanschluss" zu (nach dem Feldnamen anpassen)
Set RadioGroup = PDDoc.GetJSObject().getField("Stromanschluss")

' Wählen Sie das Optionsfeld "Ja" aus (nach dem Feldnamen anpassen)
Set RadioButton = RadioGroup.getButton("Ja")

' Setzen Sie das Optionsfeld auf "Ja"
RadioButton.Value = True

' Speichern Sie das PDF-Formular
AVDoc.Save 1, "C:\Pfad\zum\Gespeicherten\Formular.pdf"

' Schließen Sie das PDF-Formular
AVDoc.Close True

' Beenden Sie Adobe Acrobat
AcroApp.Exit
End Sub


Hier sind die wichtigsten Änderungen:

Du solltest AVDoc.Save verwenden, um das geänderte Formular zu speichern.

Du kannst AVDoc.Close verwenden, um das PDF-Formular zu schließen.

Du solltest AcroApp.Exit verwenden, um Adobe Acrobat zu beenden.

Stelle sicher, dass du den Pfad zu deinem PDF-Formular anpassst. Mit diesem Code solltest du das "Ja"-Optionsfeld in deinem PDF-Formular auswählen und das Formular speichern können.

Gruß
Anzeige
AW: VBA Skript um in PDF-Formular Optionsfelder auszuwählen
25.10.2023 20:27:22
SanBernardo
Moin! :)
Danke für den Ratschlag. Leider funktioniert dein Vorschlag auch noch nicht ganz.
Bei Zeile
Set RadioButton = RadioGroup.getButton("Ja")
kommt der Laufzeitfehler 438 -Objekt - Objekt unterstützt diese Eigenschaft oder Methode nicht.
Irgenwie muss man den "Ja" Button doch ansprechen können.
Bei der Initianlisierung der Gruppe (Stromanschluss) gibt es kein Problem - bis dahin läuft es...
AW: VBA Skript um in PDF-Formular Optionsfelder auszuwählen
25.10.2023 20:45:49
SanBernardo
Ich habs nun doch geschafft:


Sub TestHerber()
Dim AcroApp As Object
Dim AVDoc As Object
Dim PDDoc As Object
Dim RadioGroup As Object

' Starten Sie Adobe Acrobat
Set AcroApp = CreateObject("AcroExch.App")

' Öffnen Sie das PDF-Formular
Set AVDoc = CreateObject("AcroExch.AVDoc")
AVDoc.Open "C:\Users\Bernard Weber\Documents\Persönlich\testo\NZV.pdf", ""
AVDoc.BringToFront

Set PDDoc = AVDoc.GetPDDoc

' Greifen Sie auf die Auswahlfeldgruppe "Stromanschluss" zu (nach dem Feldnamen anpassen)
Set RadioGroup = PDDoc.GetJSObject().getField("Stromanschluss")

' Setzen Sie die ausgewählte Option in der Auswahlfeldgruppe "Stromanschluss"
RadioGroup.Value = "JA" ' Hier "JA" durch den gewünschten Wert ersetzen

' Speichern Sie das PDF-Formular
AVDoc.Save 1, "C:\Pfad\zum\Gespeicherten\Formular.pdf"

' Schließen Sie das PDF-Formular
AVDoc.Close True

' Beenden Sie Adobe Acrobat
AcroApp.Exit
End Sub

Vielen Dank! :)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige