pdf via Makro erstellen mit Name aus Zelle mit Formel
#1
Guten Tag zusammen,

ich bin nunmehr seit Tagen verzweifelt auf der Suche nach einer Lösung für mein Problem, was mir als Anfänger extra schwer fällt. Vielleicht könnt ihr mir ja weiterhelfen. 

Ich habe eine Kalkulation, welche über ein Makro (ausgeführt über ein Steuerelement) die Tabelle als pdf in einem ausgewählten Speicherort ablegen soll. Das funktioniert auch. 
Mein Problem besteht darin, dass ich eine Zelle (in diesem Fall JJ5) auswählen möchte, in der aus anderen Zellinhalten ein Name abgeleitet/generiert/erstellt wird. 

Die Formel in der Zelle JJ5 lautet: =D18&" "&V36&" "&DF36&" "&DF45&"kg"&" "&D45&"_"&G98&" -"&" "&DZ34&""

Dieser "umständlich" generierte Name ist leider notwendig, da das pdf aus dem besagten Speicherort automatisch in ein digitales Aktenarchiv gezogen wird und automatisch dem Vorgang zugeordnet werden soll.

Bisher löse ich das wie nachstehend, wobei der Name der pdf hier immer Kalk_2 ist und manuell umbenannt werden muss.

Private Sub CommandButton25_Click()
'
' PFD_erstellen Makro
'
' Tastenkombination: Strg+e
'
    ChDir "O:\Kalkulation Zwischenspeicher"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "O:\Kalkulation Zwischenspeicher\Kalk_2.pdf", Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub


Meine Frage ist nun, wie muss ich die Formel abändern damit der Name aus der Zelle JJ5 gezogen wird?
oder gibt es eine andere Möglichkeit die ich dann aber auch über ein Steuerelement auslösen kann?

Danke im Voraus schon mal für Eure in Anspruch genommene Zeit.

LG KRS
Top
#2
Hi

In JJ5 den Pfad komplett zusammenstellen.
O:\Kalkulation Zwischenspeicher\Kalk_2.pdf
sollte aber auch ohne .pdf gehen
O:\Kalkulation Zwischenspeicher\Kalk_2

Und im Code einfach die Zelle Verwenden.
Code:
Private Sub CommandButton25_Click()
'
' PFD_erstellen Makro
'
' Tastenkombination: Strg+e
'
    ChDir "O:\Kalkulation Zwischenspeicher"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        Range("JJ5").Value, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub
Gruß elex
Top
#3
Hi Elex,

danke für deine schnelle Antwort. Und Dankeschön es klappt mit der Namensgebung.

Nur speichert er die pdf plötzlich nicht mehr im Verzeichnis, sondern auf meinem Desktop  Huh

Die Formel lautet jetzt wie folgt:
Edit: hatte vorhin einen kleinen Fehler. Die namensgebende Zelle ist nicht JJ5 sondern CL18


Private Sub CommandButton25_Click()
'
' PFD_erstellen Makro
'
' Tastenkombination: Strg+e
'
    ChDir "O:\Kalkulation Zwischenspeicher"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        Range("CL18").Value, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub


Muss ich da noch etwas ändern?

Gruß
Flo
Top
#4
Der CommandButton25  muss sich auf dem Blatt von Zelle CL18 befinden. Sonst musst du das Blatt für die Zelle angeben.
Sheets(„Blattname“). Range("CL18").Value
 
Wenn in CL18 ein korrekter Pfad steht sollte das klappen.

PS: Die ChDir Zeile braucht es eigentlich nicht.

Gruß Elex
Top
#5
Perfekt!  :18:

Dankeschön klappt prima.

LG 
Flo
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste