Sichtbares Ergebnis einer Zelle mit Verkettung an Nachbarzelle als Text übergeben
#1
Liebe Helfenden und Ratgebenden,
als Einstieg möchte ich eine Entschuldigung dafür sagen, dass ich dieses Thema hier poste. Ich bin ziemlich sicher, dass es hier bereits behandelt wurde. Ich habe auch tapfer gesucht, aber leider nichts Relevantes gefunden und in den gestern durchgesehenen Hilfen von MS fand ich ebenfalls nichts Passendes.
Ich freue mich also über weiterhelfende Links oder direkte Bezugnahme auf meine Tabelle.
Worum geht es in dieser?

Eine Software generiert vier verschiedene Dokumente für zwei Personengruppen aus einer Abrechnung aus Arbeitseinsätzen in Form von Serienbriefen. Zur Archivierun werden die docx-Files in pdf-Dateien umgewandelt und müssen danach mit einem Dateinamen versehen werden, der auch den Abrechnungszeitrum enthält. Die Konvention für die Dateinamen habe ich so gestaltet, dass nur geringe Veränderungen für die monatlichen Abrechnungen erforderlich sind.
Den abrechnenden Kollegen möchte ich ein Werzeug in die Hand geben, das sie easy an die Monatsabrechnung anpassen können und aus dem heraus sie bequem den Namen für die pdf-Datei kopieren und weiterverwenden können. Eine Lösung mittels Excel und Textverknüpfung erschien mir als beste Lösung (Anhang).
Leider fand ich keinen Weg, das in den Zellen mit den Verknüpfungen korrekt Angezeigte (D7 bis D14) so in die Nachbarzellen (C7 bis C14) zu übergeben, dass es aus diesen heraus kopiert und als Namen der pdf-Datei verwendet werden können.
Besten Dank für die Aufmerksamkeit.
Lothar


Angehängte Dateien
.xlsx   Forum_Datei-Namen_Kopier-Tabelle_2025-10-12.xlsx (Größe: 11,18 KB / Downloads: 8)
Antworten Top
#2
HI
wo genau willst du denn Einfügen?
wenn du eine Zelle in der Spalte D kopierst und dann NICHT in Excel einfügst sondern woanders, wird dort der angezeigte Inhalt eingefügt
nur wenn du in Excel einfügst, wird die Formel übernommen.
Dh. normalerweise solltet du keine Spalte C benötigen, sondern kannst direkt aus D kopieren.
Falls doch, musst du Spalte D kopieren und mit Inhalte-Einfügen - WERT in die Spalte C einfügen. Das musst du aber jedesmal wiederholen, wenn sich die Werte in Spalte E:O ändern.

Gruß Daniel
[-] Folgende(r) 1 Nutzer sagt Danke an slowboarder für diesen Beitrag:
  • Lothar2202
Antworten Top
#3
Hallo Daniel,
herzlichen Dank für deine schnelle Antwort, die absolut treffend und problemlösend ist.
Auf den Gedanken, dass das so easy geht, wäre ich niemals gekommen.
Beim Test vor wenigen Minuten habe ich auch gesehen, dass ich den Anhang ".pdf" weglassen kann.
Nun muss ich nur noch einen Weg finden über die Schutzfunktionen, dass mir die Kollegen nicht den funktionalen Inhalt in der Spalte D, die bald Spalte C sein wird, zerkloppen.
Ich wünsche dir einen erfreulichen restlichen Sonntag und verbleibe mit
herzlichen Grüßen, Lothar
Antworten Top
#4
Meine Frage hierzu an ChatGPT:

Es sollte doch möglich sein, aus Excel ein .docx zu öffnen und entsprechend eines in einer Zelle per Formel ermittelten Namens, dieses als ein PDF-Dokument zu speichern?

Die Antwort von ChatGPT:

Ja ✅ – das ist grundsätzlich möglich, aber nicht direkt per Excel-Formel, sondern über VBA (Visual Basic for Applications).

Hier ist, wie man es umsetzen kann:
Du kannst aus Excel heraus ein bestimmtes Word-Dokument öffnen, Bearbeitungen oder Platzhalter ersetzen, und es anschließend unter einem dynamischen Namen (aus einer Excel-Zelle) als PDF exportieren.

🧩 Beispiel: Word-Dokument öffnen & als PDF speichern

Angenommen:

In Zelle A1 steht der Name, der als PDF-Dateiname dienen soll.

Das Word-Dokument liegt unter C:\Vorlagen\Briefvorlage.docx.

Der PDF soll nach C:\PDFs\ exportiert werden.

Sub WordToPDF_FromExcel()
    Dim wdApp As Object
    Dim wdDoc As Object
    Dim DateiName As String
    Dim WordPfad As String
    Dim PDFPfad As String
   
    ' Dateipfade
    WordPfad = "C:\Vorlagen\Briefvorlage.docx"
    PDFPfad = "C:\PDFs\"
   
    ' Name aus Zelle A1
    DateiName = Range("A1").Value
   
    ' Word-Instanz starten (unsichtbar)
    On Error Resume Next
    Set wdApp = GetObject(, "Word.Application")
    If wdApp Is Nothing Then Set wdApp = CreateObject("Word.Application")
    On Error GoTo 0
   
    ' Word-Dokument öffnen
    Set wdDoc = wdApp.Documents.Open(WordPfad)
   
    ' Optional: sichtbare Word-Anzeige
    ' wdApp.Visible = True
   
    ' PDF speichern
    wdDoc.ExportAsFixedFormat OutputFileName:=PDFPfad & DateiName & ".pdf", _
        ExportFormat:=17 ' wdExportFormatPDF
   
    ' Alles schließen
    wdDoc.Close False
    wdApp.Quit
   
    ' Objekte freigeben
    Set wdDoc = Nothing
    Set wdApp = Nothing
   
    MsgBox "PDF wurde gespeichert unter: " & PDFPfad & DateiName & ".pdf"
End Sub

🔧 Erweiterungen (optional)

Du kannst das Skript leicht anpassen:

🔄 Platzhalter ersetzen (z. B. [Name] im Word-Dokument durch Zelleninhalt)

🧩 Serienausgabe (z. B. für mehrere Zeilen mit Namen → mehrere PDFs)

🕵️‍♂️ Automatisch prüfen, ob die Datei bereits existiert (und ggf. überschreiben oder neuen Namen vergeben)

💬 Word unsichtbar laufen lassen oder sichtbar zur Kontrolle

Möchtest du, dass ich dir gleich eine Variante zeige, die mehrere Zeilen durchläuft (z. B. jede Zeile in Excel = ein PDF aus derselben Word-Vorlage)?
Dann kann ich dir den VBA-Code direkt dafür anpassen.

<<< Ende der Antwort


Ich habe das jetzt nicht getestet. Aber es sieht ganz danach aus, als sollte sich der Prozess noch sehr viel besser optimieren lassen.
[-] Folgende(r) 1 Nutzer sagt Danke an ws-53 für diesen Beitrag:
  • Lothar2202
Antworten Top
#5
Lieber WS-53,
dein Ansatz hört sich wahnsinnig charmant an, und wenn das Ganze für mich privat wäre hätte ich dir ein begeistertes "Ja" zugerufen zu deinem Vorschlag, ein Skript aufzusetzen.
Die Realität spricht aber aus Gründen der Effektivität deiner Hilfe dagegen: Das Ergebnis würde niemals praxiswirksam werden.
Weshalb?
  • Die Lösung ist für eine Berliner Verwaltungseinheit und da sind Office-Programme mit Skripten gegenwärtig NOCH zulässig, wenn sie vor Ort erstellt und von der IT-Stelle abgesegnet sind.
  • Ich (Rentner, 74) arbeite für diese Verwaltungseinheit just for fun, das heißt, ich kann dort nur etwas implementieren, was auch ohne mein Zutun funktionsfähig bleibt. Also Standard.
  • Deine Lösung setzt fixe Strukturen zwischen den Ordnern mit den Dateien voraus. Der Leiter der Verwaltungseinheit besteht trotz einer Debatte zum Thema darauf, dass die jeweiligen Dateien in einer dreistufigen Struktur (Jahr ---> Quartal ---> Abrechnungstag) abgelegt werden. Also müsste das Skript skalierbar sein. Schlussfolgerung: Nicht realisierbar wegen der voranstehend beiden Punkte.
Was bleibt?
  • Ich lass meine Anfrage als "gelöst" stehen.

Und vor allem ein herzliches Dankeschön für deine Nachricht und dein Angebot.
Lothar
Antworten Top
#6
Eine Verwaltung die sich durch Gebühren und oder Steuergelder finanziert, muss halt nicht effektiv arbeiten.

Die genannten und weitere Bedingungen würde die KI oder einer der sich halbwegs gut mit VBA auskennt, auch noch realisieren können.
[-] Folgende(r) 1 Nutzer sagt Danke an ws-53 für diesen Beitrag:
  • Lothar2202
Antworten Top
#7
Lieber WS-53,
was soll ich dir hier antworten? 
Das einzige, was ich dir sagen kann ist, dass die von mir implementierte Komponente "Abrechnung" bereits einen gewaltigen Sprung bedeutet im Vergleich zur traditionellen Abrechnung mittels Excel.
Aber Danke für deinen Kommentar,
sagt mit herzlichen Grüßen, Lothar
Antworten Top
#8
Hi Lothar,

mein letzter Kommentar war nicht gegen dich gerichtet, denn ich habe schon registriert, dass du dich an vorgegebene Rahmenbedingen halten musst. 

Früher, als es zumindest in der freien Wirtschaft noch keine Regelhüter gab, bzw. deren Macht noch recht gering war, war es noch viel einfacher Prozesse umfassender zu optimieren.
Antworten Top


Gehe zu:


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