Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: mit VBA PDFs aus modifizierten Tabellenlättern erstellen

mit VBA PDFs aus modifizierten Tabellenlättern erstellen
27.06.2024 19:02:00
ExcelAnfängerchen1977
Hallo. Ich kenne mich in VBA nicht aus - und ich habe ein Problem -wo ich gar nicht zurechtkomme - ich aber denke, dass es recht trivial ist - wenn man sich auskennt. Vielleich tkann man mir ja helfen.

Also - ich habe ein Tabellenblatt "KlassenStundenplan" erstellt. In dessen Zelle G3 gehört ein Klassencode (z.B. "A1"). Durch die Eingabe dort wird der Stundenplan auf diesem Sheet erstellt.

Ich möchte jetzt ein weiteres Tabellenblatt "ErstellungPDFs" erstellen, wo ich nun alles eingebe und anklicken kann, was und wie es als PDF ausgegeben wird:
Ich würde da gern alle vorkommenden Klassennamen/Codes stehen haben - also eine einspaltige Tabelle aus der ersten Spalte von "'DataP-Grunddaten-V2'!$Z$7#". Z.B. durch "Spaltenwahl('DataP-Grunddaten-V2'!$Z$7#;1)
Ich hätte jetzt gern entweder Klickfelder oder eben eine Zelle in der Spalte vor dieser Klassennamen-Liste - in denen ggf. durch 0 oder 1 angeben wird, ob der Stundenplan zu dieser Klasse erstellt werden soll... Also in den Zellen E3 und darunter sollen 0 bzw 1 stehen - und der Zelle F3 die Klassennamen - also z.B. E3:"1" und F3:"A1" , d.h. A1 Klasse soll gedruckt werden. USW

In einem anderen Feld würde ich gern den Speicherort für das PDF angeben - also den Pfad, wo es gespeichert werden soll - sagen wir mal Zelle A2.

Ziel ist es dann, nach Auswahl der Klassen mit 0en und 1en bzw. mit Klickfeld möchte ich gern einen Button drücken, und dann solle für jede ausgewählte Klasse (ausgewählt durch 1) in der Tabelle E3# der entsprechende Klassencode einmal auf dem Tabellenblatt "KlassenStundenplan" in die Zelle G3 geschrieben werden (dadurch wird der Klassenstundenplan erstellt) - dann soll in einem Druckbereich von z.B. A1 : AE42 des "KlassenStundenplan" ein PDF erstellt werden, und zwar abgespeichert in dem Pfad in Zelle A2 - und zwar mit dem DateiNamen zusammengesetzt aus dem:
Namen des Tabellenblatts "KlassenStundenplan"&"_"&Klassencode (z.B. A1) &"_"& dem aktuellen Datum (im Format 12122023)
Der Laufindex wäre also die Anzahl an Klassen = Zeilen der Tabelle E3#.

Ich würd mich riesig freuen, wenn mir jemand helfen würde.

Lieben Grüße!
Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit VBA PDFs aus modifizierten Tabellenlättern erstellen
27.06.2024 20:41:21
Piet
Hallo

das war eine lange Einleitung, dazu ein ernstgemeinter Tipp - Kein Kollege baute diese Tabelle nach!
Am besten du lädst diese gewünschte Tabelle als Beispieldatei hoch, mit Lösungsvorgabe von Hand.
Wenn wir den Tabellenaufbau erkennen wird ein Kollege evtl. so nett sein und dir ein Makro schreiben.
Aber die Tabelle selbst aufbauen, das wird hier keiner tun.

mfg Piet
Anzeige
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
28.06.2024 19:17:14
Piet
Hallo

also, ich habe einen lauffähigen Code der für die PDF Steuerung alle Dateinamen erstellt. Das klappt auch.
Ich habe aber nur Excel 2003 zur Verfügung, da klappt die PDF Speicherung offenbar nicht. Zu altes System.

Bitte teste die Datei einmal auf deinem PC, ob bei dir denn die PDF Speicherung klappt??
Wenn nicht bitte ich die Kollegen um Hilfe, damit du eine funktionierende Lösung bekommst.
Bitte speichere diese Beispiel Datei auf deinem PC im neuen .xlsm Format!
https://www.herber.de/bbs/user/170558.xls

mfg Piet
Anzeige
AW: mit VBA PDFs aus modifizierten Tabellenlättern erstellen
29.06.2024 16:20:11
Piet
Hallo

@Ralf Danke für den Hinweis auf Schreibfehler im Code. Darf man den Range überhaupt angeben??

Unten ist der Code den ich geschrieben habe, hier mal ohne Beispiel Datei hochgeladen.
Es wäre zu Überlegen in die Spalte E einfach nur ein "X" oder "D" für drucken einzugeben.
Dann kann man diese IF Zeile auf X oder D reduzieren. Den Std Fehler habe ich korrigiert.
If UCase(AC) = "WAHR" Or AC = True Or AC = "Ja" Then

Meine Tochter wird versuchen den defekten Medion PC hier neu aufspielen zu lassen.
Mal abwarten was dabei herauskommt, der hatte sich einen bösen Virus eingefangen.
Der Vaio ist eine Leihgabe vom Bruder. Da sind aber auch persönliche Programme drauf.
z.B. Programmierung von SPS Steuerung seiner Pumpenanlage. Kann ich nicht löschen!

mfg Piet

Option Explicit '28.6.2024 Piet Herber Forum
Dim AC As Range, lz1 As Long, Datum
Const KlPlan = "Stundenplan_Klassencode"



Sub PDF_Steuerung()
Dim Pfad As String, Datei As String
Dim StPlan As Worksheet, Klasse As String
Set StPlan = Worksheets("Stundenplan")

With Worksheets("PDF-Steuerung")
Pfad = .Range("A2").Value
Pfad = "E:\Forum Herber Jan 2024"
If Right(Pfad, 1) > "\" Then Pfad = Pfad & "\"

On Error GoTo Fehler
Datum = Format(Date, "dd-mm-yy")
lz1 = .Cells(1000, 5).End(xlUp).Row
.Range("G3:G" & lz1).ClearContents

For Each AC In .Range("E3:E" & lz1)
If UCase(AC) = "WAHR" Or AC = True Or AC = "Ja" Then
'Vaiable laden um Dateiname zu bilden
Klasse = AC.Cells(1, 2)
StPlan.Range("G3") = Klasse 'Stundenplan setzen
Datei = KlPlan & "(" & Klasse & ")_" & Datum & ".pdf"
AC.Offset(0, 2).Value = Datei

'Speichercode für PDF Datei
'** das kann ich mit Excel 2003 nicht testen!
'** PDF Code zum Dateinamen testen deaktiviert!!
StPlan.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Pfad & Datei, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
End If
Next AC
End With
Exit Sub

Fehler: MsgBox "Unerwarteter Fehler"
End Sub

Anzeige
AW: mit VBA PDFs aus modifizierten Tabellenlättern erstellen
29.06.2024 22:20:38
ExcelAnfängerchen1977
Ihr seid der Hammer - so lieben herzlichen Dank - es funktioniert so reibungslos und einfach... DAnke - ich hätte das allein nicht hinbekommen - und hab schon so viel gerade beim Code lesen gelernt - Großartig...

Ich wünsche euch ein schönes RestWE - und noch mal Danke für Eure unbezahlbare Hilfe...

Anzeige
Anmerkung
29.06.2024 23:51:46
ralf_b
solltest du meinen Code benutzt haben, so muß ich leider mitteilen, das da was doch nicht so ganz stimmt.
Wenn es nicht auffällt, kannst du diesen Hinweis getrost ignorieren.
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
28.06.2024 19:26:53
ExcelAnfängerchen1977
Schon mal herzlichen Dank für die Mühen...

Leider gibt es Problem - Excel sagt mir, dass die Datei beschädigt wäre und wiederhergestellt werden muss: "Excel hat Ihre Formeln und Zellwerte wieder hergestellt, aber einige Daten sind möglicherweise verloren gegangen"

Danach erhalte ich eine Datei in reinem Text (alle Grafikelemente ect. sind verloren) und leider auch keine Visual Basic / kein Button oder irgendwelche Programmierungsteile etc... Also quasi eine "nackige" Datendatei "mit ohne alles".

Ich hab es mehrfach versucht - aber immer das gleich Ergebnis.

Anzeige
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
28.06.2024 23:52:42
Oppawinni
Hallo Piet, die hochgeladene Datei ist effektiv defekt.
Vielleicht musst du die einfach nochmal hoch laden?
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
29.06.2024 00:36:40
Piet
Hallo Oppawinni

seltsam, seltsam, bei mir läuft sie mit dem alten Excel 2003 Programm. Ich habe den PDF Code deaktiviert.
Einfach ein ' Zeichen vor den PDF Befehl gesetzt. Die Datei Namensliste wird dann komplett erstellt.
Wäre schön wenn du den PDF Befehl zum laufen bringst. Ich habe auch keinen Drucker zum testen.
https://www.herber.de/bbs/user/170560.xls

mfg Piet


Anzeige
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
29.06.2024 10:13:45
ralf_b
im pdf code hast du die St(d)plan Variable falsch geschrieben. die pdf wird erzeugt aber durch die fehlerhafte Datei sind alle hübschen Formatierungen flöten gegangen.

ich habs mir mit libreoffice portable angesehen und den Code extrahiert. Der war auch weg nach der Reparatur. Entsprechend sieht die Pdfdatei aus.

Es wäre für Alle besser wenn du mal auf eine neuere Excelversion umsteigen würdest. Das kann doch kein so großes Problem sein.
Anzeige
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
29.06.2024 13:24:29
Oppawinni
Das ist auch nicht besser.
Hast du wenigstens ein einigermaßen aktuelles Windows ?
Die 20 oder 30 Euro, die ein aktuelleres Office kostet, würde ich dir spendieren, wenn ich wüsste wie.
AW: Piet bittet Kollegen um Hilfe für PDF Datei Speicherung
29.06.2024 12:31:47
ExcelAnfängerchen1977
Hallo - ich hab mal ne dumme Frage... Eigentlich geht es doch quasi nur um den Code. Die Datei ist ja eher eine Hilfsdatei - die nur das Problem anschaulich macht...

Wäre es nicht schon ausreichend - wenn hier der Code einfach reinkopiert wird - also nicht in der Datei - sondern als quasi Textfeld hier im Chat... dann kann ich den doch einfach implementieren bzw. überarbeiten und bei Problemen kann man das hier einfach kommunizieren, dass alle es sehen können.

Vielleicht irre ich auch - war nur eine Idee - noch mal lieben Dank - aber leider geht kommt kein Code hier bei mir an... die Fehlermeldung bleibt...

Anzeige
deine Datei und der Code ....
29.06.2024 13:13:05
ralf_b
......gehören zwingend zusammen.

vba wird auf die besonderen Anforderungen einer jeden Datei zugeschnitten. Bei VBA -Nein kannst du doch gar nichts selbst anpassen.

sei's drum. ich habe deine Datei bzw. den Code mal etwas aufgehübscht.
Es besteht kein Anspruch auf Fehlerfreiheit oder Vollständigkeit.
Bezüglich der Prüfung ob für die angekreuzte Klasse überhaupt Daten vorhanden sind muß dies noch etwas genauer spezifiziert werden woran man das erkennen soll.
Aktuell habe ich die Pausenzellen aus dem Bereich entfernt und eine Prüfung eingebaut wo die Anzahl der leeren Zellen mit der Anzahl der zu prüfenden Zellen verglichen wird. Beim Löschen vorhandener Dateien muss man noch prüfen ob die evtl. geöffnet sind, denn dann gibt's n'en Löschfehler.

https://www.herber.de/bbs/user/170569.xlsm

happy testing

rb


Anzeige
AW: mit VBA PDFs aus modifizierten Tabellenlättern erstellen
27.06.2024 21:47:32
ExcelAnfängerchen1977
Danke für den Tipp - mach ich sobald ich wieder im Büro bin - und sorry - ich dachte, dass es in einer Datei sogar eher unübersichtlich ist - aber klar - ist halt mit vielen Worten erklärt...

Einen schönen Abend - und noch mal Danke!
AW: mit VBA PDFs aus modifizierten Tabellenlättern erstellen
28.06.2024 10:58:15
ExcelAnfängerchen1977
So - nochmal DANKE - hier die Datei inkl Erläuterungen - und soory - wenn ich was nicht so mache - wie gewünscht - ist Unwissenheit - keine Absicht !!!!
Dateilink

https://www.herber.de/bbs/user/170556.xlsx
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige