Aus Array Inhalt eine Word-Datei mit integriertem Briefkopf erzeugen

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Aus Array Inhalt eine Word-Datei mit integriertem Briefkopf erzeugen

    Hallo,

    ich stehe vor einem mir unlösbaren Problem und Google gibt mir auch keine Auskunft.


    Ich habe ein paar Textboxen mit "Vornamen", "Nutzername", Passwort", "Anmeldename".
    Diese werden in ein Array überführt und in ein Datagrid eingefügt.

    Ich würde jetzt jedoch gern den Inhalt des Arrays in ein Word-Dokument übergeben in vorgegebenen Positionen. Zumdem soll ein Briefkopf vorhanden sein.

    Meint Ihr das ist "so einfach" zu realisieren??

    Habe zwar im Netz schon ein bisschen Code gefunden, jedoch kann ich damit nichts anfangen, da sehr viele Fehler dort auftreten.

    Quellcode

    1. Word-Objekt Variable definieren
    2. Dim wApp As Object
    3. ' Word-Objekt erzeugen
    4. Set wApp = CreateObject("Word.Application.8")
    5. With wApp
    6. ' Word anzeigen
    7. .Application.Visible = True
    8. .Application.Activate
    9. ' Word-Dokument laden und anzeigen
    10. .Documents.Open sWordFilename
    11. ...
    12. ' nach getaner Arbeit, Word wieder beenden
    13. .Application.Quit
    14. End with
    15. Set wApp = Nothing
    Eigentlich gibt es dafür die Serienbrieffunktion in Word.
    Du kannst diese aber auch nachbilden, indem du einen Musterbrief erzeugst mit "Variablen" (z.B. den String $$USERNAME$$) und per Programm diese Strings mit Find/Replace gegen die Werte aus deinem Datagrid ersetzt.
    Ich würde das als Poor Man's Mail Merge bezeichnen.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Mach es direkt mit Excel und Word als Serienbrief
    oder
    mach es mit VB, dann aber nicht unbedingt mit Word. Da würde ich einen RichText nehmen und es so machen, wie @petaod: beschrieben hat.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!