2k Aufrufe
Gefragt in Tabellenkalkulation von petra65 Experte (1.8k Punkte)
Hallo,

ich suche ein Makro, das mir beim speichern das Tabellenblatt im pdf-Format im Ordner der Tabelle speichert.

Der Tabellenname soll dann bestehen aus: B1 (leer) H1 (leer) Tagesdatum, und falls die Datei bereits vorhanden ist, sollte das irgendwie erkennbar sein, z. B. mit (2).

Geht sowas? Ich stehe da total auf dem Schlauch :-(

Meine Versuche Funktionieren alle nicht.

Gruss Petra

8 Antworten

+1 Punkt
Beantwortet von m-o Profi (22.7k Punkte)

Hallo Petra,

das folgende Marko gehört in den VBA-Code der betreffenden Arbeitsmappe (Anleitung).

Vor dem Schließen der Arbeitsmappe wird immer das aktuelle Tabellenblatt als PDF-Datei gespeichert. Wie du sehen wirst, habe ich das mit dem Namen etwas anders gelöst. Schau mal, ob das für dich so funktioniert:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim strDatei As String

'Name und Pfad der PDF-Datei wird in Variable geschrieben
strDatei = ThisWorkbook.Path & "\" & Range("B1").Value & " " & Range("H1").Value & " " & Format(Now, "yyyy_mm_dd_hhmmss") & ".pdf"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strDatei, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, ignoreprintareas:=False, _
        openafterpublish:=True
End Sub

Gruß

M.O.

0 Punkte
Beantwortet von petra65 Experte (1.8k Punkte)

Hallo M.O.,

super - funktioniert tadellos yes

Gibt es eigentlich noch die Möglichkeit die Uhrzeit mit Doppelpunkten getrennt anzuzeigen?
Wenn ich  ... ... Format(Now, "yyyy_mm_dd_hh:mm:ss") ... daraus mache erhalte ich eine Fehlermeldung.

Aber das ist nur Verschönerung.
Ganz herzlichen Dank.

PH

+1 Punkt
Beantwortet von steffen2 Experte (6.4k Punkte)
Doppelpunkte sind in Dateinamen nicht erlaubt

Gruß Steffen2
0 Punkte
Beantwortet von petra65 Experte (1.8k Punkte)

enlightened na klar ...... wer logisch denken kann hätte das bemerkt blush

Dankeschön

0 Punkte
Beantwortet von
wie muss ich den VBA Code verändern wenn ich nicht das Aktive Tabellenblatt sondern immer ein Bestimmtes als PDF Abspeichern möchte?
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)

Hallo,

dann musst diese Zeile im Code

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strDatei, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, ignoreprintareas:=False, _
        openafterpublish:=True

ändern:

Worksheets("Tabelle1").ExportAsFixedFormat Type:=xlTypePDF, Filename:=strDatei, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, ignoreprintareas:=False, _
        openafterpublish:=True

Statt Tabelle1 musst du natürlich den Namen deines Arbeitsblattes nehmen. Beachte bitte, dass der Namen in Anführungszeichen stehen muss.

Gruß

M.O.

0 Punkte
Beantwortet von
Hallo,

ich habe ein ziemlich breites Tabellenblatt was dann auf mehrere Seiten als PDF verteilt wird, gibt es die Möglichkeit alles auf ein Blatt auszugeben ?

Grüße

Harald
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo Harald,

du kannst beim Seitenlayout (Schaltfläche "Drucktitel" dort auf Reiter "Seite einrichten" gehen) einstellen, dass alles eine Seite hoch und breit verkleinert wird. Aber achte auf die Lesbarkeit.

Gruß

M.O.
...