1.3k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo Leute,

als VB Anfänger stecke ich gerade in einem Problem.

Version: Excel 2010

Aufgabe: Nach dem Öffnen einer Datei soll automatisch ein PDF am
gleichen Speicherort erzeugt werden und die Datei soll sich
automatisch wieder schließen.

Code als Modul xls2pdf.xlam:

Option Explicit
Sub xls2pdf()

Dim dname As String
Dim mypath As String
Dim pfad_name As String

mypath = Application.ActiveWorkbook.Path
dname = Application.ActiveWorkbook.Name
dname = Left(dname, (InStrRev(dname, ".") - 1))
pfad_name = mypath & "\" & dname

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF,
Filename:=pfad_name _
, Quality:=xlQualityStandard, IncludeDocProperties:=True,
IgnorePrintAreas _
:=True, OpenAfterPublish:=False

ActiveWindow.Close
End Sub

Code in xls2pdf.xlam/DieseArbeitsmappe mit Option
Workbook/Open:
Private Sub Workbook_Open()
xls2pdf
End Sub

Fehler: Laufzeitfehler 91
Objektvariable oder With-Blockvariable nicht festgelegt

Der Debugger bleibt in der Zeile
mypath = Application.ActiveWorkbook.Path
stehen

Wenn der Code in eine bereits geöffneten Sheet ausgeführt wird,
funktioniert alles wunderbar.

Bin für jede Hilfe dankbar.

Grüßle aus Karlsruhe
Armin

4 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Armin,

der Code läuft bei mir Fehlerfrei. Ich hätte ja das Open Ereignis benutzt, da dies beim öffnen passieren soll. Das bedeutet aber Du kannst mit der Datei nicht mehr arbeiten.

Gruß Hajo
0 Punkte
Beantwortet von
Hallo Hajo,

erst mal vielen Dank für deine schnelle Antwort!

Genau vor dem Problem stand ich, das ich das Open Ereignis dafür
nicht nutzen kann, da ich sonst an mein Excel nicht mehr
drankommen würde...:-)

Die Idee war, das ich das Add-In bei Bedarf aus dem Pfad entferne
und damit die Automatik stoppen kann.

Ich muss daher deine Vorgehensweise noch mal genau
nachfragen:

Du bindest das Add-In ein und rufst die Funktion xls2pdf
automatisch auf. Wenn man dann eine Datei öffnet, produziert sich
automatisch ein PDF am gleichen Speicherort und die Datei
schließt sich automatisch im Excel?

Bitte mir noch mal bestätigen, weil dann stecke ich echt fest.

Grüßle aus einem verregneten Karlsruhe
Armin
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
von Add In habe ich in Deinem Beitrag nichts gelesen.
Es war auch keins verlinkt.
Ich habe den Code in ein Modul kopiert und ausgeführt.

Gruß Hajo
0 Punkte
Beantwortet von
Hallo Hajo,

im Modul funktioniert alles wunderbar.

Das Problem tritt nur als Add-In auf, ich brauche das Modul ja in jeder
Datei, die ich öffnen will.

Für jede weitere Idee wäre ich nach wie vor dankbar.

Grüßle
Armin
...