Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

PDF in Formular anzeigen lassen

Begonnen von compinaut, Januar 16, 2021, 18:32:19

⏪ vorheriges - nächstes ⏩

compinaut

Hallo,
ich möchte gerne in einem Formular ein PDF anzeigen lassen, weil ich dieses mir vor dem Speichern ansehen möchte. Ich habe das ActivX von Adobe eingebunden. Es werden jedoch nur die Steuerelemente und keine Inhalte der Datei angezeigt. Das Steuerelement habe ich schon größer gemacht. Hilft aber nichts. Ich benutze noch Access 2010. Weiß jemand Rat?
Gruß
compinaut

P.S. Ich habe in einer anderen Datenbank auf der Arbeit ein WebbrowserElement eingefügt unter Access 2016. Dies funktioniert super. Aber irgendwie kriege ich es unter Access 2010 (zu Hause) nicht hin. Die pdf wird dann im externen pdf-Reader geöffnet und nicht im WebbrowserElement. Das WebbrowserElement bleibt leer.

steffen0815

Hallo,
zu beiden Varianten fehlt dein Code der das Problem nachvollziehbar machen könnte.
Gruß Steffen

markusxy

Zitat von: compinaut am Januar 16, 2021, 18:32:19Die pdf wird dann im externen pdf-Reader geöffnet und nicht im WebbrowserElement.

Da musst du nachsehen, was im Internet Exporer eingestellt ist.
Der Webbrowser nutzt ja den IE für die Anzeige.

Versuch mal die Datei direkt im IE zu öffnen.

compinaut

Ich binde das ActiveX-Steuerelement von Adobe mit den anhängenden Eigenschaften ein.

Der Code für die Datei lautet:

Result = "C:\Users\compinaut\Documents\Datei.pdf")
Me("AcroPDF1").Object.src = Result

Die Datei wird scheinbar auch geladen. Jedoch erscheinen nur die Steuerelemente von Adobe, aber kein Dateiinhalt. Auch das Vergrößern des Steuerelementes bringt nichts. Das Steuerelement wird automatisch verkleinert.

compinaut

Habs herausgefunden über eine Suche im Internet.
Ich habe den Reader 11 installiert. Jetzt wird die Datei auch angezeigt.
Jedoch ist die Anzeige sehr klein und ich kann sie über die Steuerelementgröße auch nicht ändern.

compinaut

Gelöst: Jetzt habe ich auch die Größe anpassen können. Man muss direkt nach dem Einbinden des Steuerelements dieses auch größer machen. Dann bleibt die Größe erhalten.
Sehr kömisch - aber es funktioniert.

Hoffentlich hilft dieser Thread auch anderen mit diesem Problem.

compinaut

Mit dem alten Acrobat Reader 11 funktioniert die Anzeige über das ActiveX-Steuerelement. Dieses wurde leider in Acrobat Reader DC abgeschafft. Daher versuchte ich nun das Webbrowser-Steuerelement. Doch damit wird die pdf-Datei im Acrobat Reader DC extern angezeigt und nicht im Steuerelement. In den Browsern wird die Datei im Browser selbst angezeigt (IE und Firefox). Auch eine Verknüpfung der pdf-Dateien mit dem IE funktioniert nicht. Die Datei wird dann trotzdem im Acrobat Reader DC angezeigt. Man kann leider auch nicht Reader 11 und DC gleichzeitig installieren.

Gibt es eine Einstellung, mit der man die pdf-Datei im Steuerelement anzeigen lassen kann?

Gruß
compinaut

markusxy

Hab jetzt kurz ein Formular mit dem Acrobat DC ActiveX versucht - überhaupt kein Problem.
Getestet mit AC2019 32 Bit.

Persönlich verwende ich aber trotzdem das Webbrowser Control mit DC ActiveX für die Anzeige, da die Freigabe des Speichers sonst nicht sauber funktioniert.

Es gibt natürlich auch jede Menge anderer Activex für die Anzeige von PDF.
Der Vorteil bei der direkten Nutzung des pdf ist natürlich die Möglichkeit selbst zu kontrollieren, welches ActiveX verwendet wird. Ehrlich gesagt bevorzuge ich auch ein Userform für die Anzeige, da ich abhängig vom Objekttyp unterschiedliche ActiveX zur Laufzeit an das Form binde.

Und falls das nicht klar sein sollte, auch IE/Webbroser Control nutzen ActiveX zur Anzeige - anders geht es beim IE meines Wissens gar nicht.
Wenn außerhalb vom Browser geöffnet wird, liegt das an den Einstellungen des IE.
LG Markus

PhilS

Zitat von: markus888 am Januar 26, 2021, 13:03:38Und falls das nicht klar sein sollte, auch IE/Webbroser Control nutzen ActiveX zur Anzeige - anders geht es beim IE meines Wissens gar nicht.
Hilft aktuell kein Stück, aber als positiver Ausblick: Microsoft hat für das 2HJ2021 ein neues Webbrowser-Control für Access auf Basis von Edge/Chromium angekündigt. Das sollte dann nativ PDFs anzeigen können.
Siehe: Microsoft Access News 2020 - Rückblick - Und ein kleiner Ausblick auf 2021
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

markusxy

Zitat von: PhilS am Januar 26, 2021, 16:59:34ein neues Webbrowser-Control für Access auf Basis von Edge/Chromium angekündigt. Das sollte dann nativ PDFs anzeigen können.

Darauf freue ich mich schon.
Eines der Vorzüge des Adobe sind die guten Navigations- und Zoommöglichkeiten direkt aus VBA heraus.
@compinaut:
 
bei mir wird folgen beim Control folgendes angezeigt:
Klasse: AcroPDF.PDF.1
OLE:    Adobe Acrobat DC Browser Control Implementation
Acrobat Reader habe ich 32 Bit installiert.
Wenn das ActiveX korrekt registriert ist, sollte es kein Problem geben.

compinaut

#10
Bei der Verwendung des ActiveX von Adobe Acrobat Reader DC kommt die Fehlermeldung, dass der OLE-Server nicht registriert ist. Es gibt im Internet ein paar Fragen dazu, aber keine Antworten, die einen weiterbringen, um den OLE-Server korrekt zu registrieren.
Beim Aufruf der Datei mit dem WebSteuerelement wird die Datei extern im Reader DC geöffnet.
Beim Aufruf einer pdf im IE wird die pdf im Browser korrekt angezeigt. Also an den Einstellungen im Browser dürfte es somit nicht liegen.

Ich muss noch ergänzen, dass das Add-On vom Reader im IE aktiviert ist. Das war eine gefundene Antwort auf meine Suche im Internet nach der Registrierung des OLE-Server. Daran kann es somit auch nicht liegen.

markusxy

Zitat von: compinaut am Februar 03, 2021, 08:43:28Bei der Verwendung des ActiveX von Adobe Acrobat Reader DC kommt die Fehlermeldung, dass der OLE-Server nicht registriert ist.

Wird bei dir der OLE Name aus meinem letzten Post in der Auflistung der ActiveX Steuerelemente in Access angezeigt und hast du das Steuerelement auch verwendet?

Ansonsten alle Programme schließen Reader deinstallieren und neu installieren.

compinaut

Hallo,
Entschuldigung für die späte Antwort.
Ich habe nur
Acrobat
Acrobat Access 3.0 Type Library
Adobe Acrobat Browser Control Type Library 1.0
Adobe Acrobat File Preview Type Library
Damit geht es leider nicht.
Gruß
compinaut

PhilS

Zitat von: PhilS am Januar 26, 2021, 16:59:34Microsoft hat für das 2HJ2021 ein neues Webbrowser-Control für Access auf Basis von Edge/Chromium angekündigt. Das sollte dann nativ PDFs anzeigen können.
Nachdem dieser Thread wiedererweckt wurde, ein kurzes Update hierzu:
Das neue Webbrowser-Control für Access ist immer noch nicht offiziell veröffentlicht, aber es ist inzwischen in den Insider- und Preview-Channels für Microsoft 365 enthalten. Es sollte in den nächsten Monaten also wirklich generell verfügbar sein.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor