Office: (Office 2013) Word Dokument aus Access füllen

Helfe beim Thema Word Dokument aus Access füllen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, ich bin neu hier, und hab gleich eine Frage *Smilie Bis jetzt hab ich relativ viel Erfahrung mit Datenbanken Access, SQL und Mysql. Jetzt... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Gerar, 30. Januar 2016.

  1. Word Dokument aus Access füllen


    Hallo,

    ich bin neu hier, und hab gleich eine Frage *Smilie
    Bis jetzt hab ich relativ viel Erfahrung mit Datenbanken Access, SQL und Mysql.

    Jetzt möchte ich Word Dokument aus Access füllen.
    Das geht auch, nur mein Problem ist wenn ich das geöffnetes Word Dokument aus zweitem Access Formular oder Unterformular füllen möchte.
    Ich müsste dem jetzt sagen dass er in das geöffnetes Word weiter schreiben soll, aber wie?

    So sieht es bei mir aus:

    Function fillword()

    Set appword = CreateObject("Word.Application")
    Dim doc As Word.Document
    Dim Path As String
    On Error Resume Next
    Error.Clear
    Set appword = GetObject(, "word.application")
    If Err.Number 0 Then
    Set appword = New Word.Application
    appword.Visible = True
    End If
    Set doc = appword.Documents.Open("C:\Painting\Procedure_DE.docx", , True)
    With doc
    .FormFields("txtclient").Result = Me.EndUserName
    .FormFields("txtProject").Result = Me.project
    .FormFields("txtpono").Result = Me.PONo

    appword.Visible = True
    appword.Activate
    End With

    Set doc = Nothing
    Set appword = Nothing

    End Function

    :)
     
  2. Wenn das Dokument geöffnet ist (was zu überprüfen wäre), erstellt man eine Referenz darauf z.B. so:
    Code:
    Insgesamt dürfte es aber ratsam sein, einmalig für die Anwendung das Dokument zu öffnen (global in der Anwendung statt privat in einem Formularcode) und die entsprechende Referenz in einer öffentlichen Variable (besser Property) vorzuhalten, so dass dann von verschiedenen Prozeduren/Formularen diese Referenz unmittelbar genutzt werden kann.

    Eine andere Variante wäre, die notwendigen zu übertragenden Informationen an einer Stelle zu sammeln (Formular/Recordset) und dann in einem Rutsch zu übertragen.
     
  3. Kleines Beispiel wie es funktionieren könnte:

    Code:
    LG Markus
     
    markusxy, 1. Februar 2016
    #3
  4. Word Dokument aus Access füllen

    Im Code wird unterstellt, dass es nur eine offene Wordinstanz gibt, wenn Word offen ist. Das könnte auch anders sein.
     
  5. Danke, das funktioniert.

    jetzt hab ich noch folgendes Problem/Frage
    Die Abfrage kann mehrere Ergebnisse liefern.
    z.B.
    SerialNo=123
    SerialNo=234
    Also von der Logik brauch ich da ein Loop

    i=1
    .FormFields("txtSerialNo(i)").Result = Me.SerialNo(i)
    i=i+1

    jeder Datensatz müsste dann im txtSerialNo1, txtSerialNo2, txtSerialNo3..
    geschrieben werde.
    So viel zur meine Logik *idee

    Nur wie macht man so was im VBA *entsetzt
     
  6. Du hast recht.
    Dann müsste man hier nur noch ergänzen:
    doc.Application.Visible = True


    dann kann man das Dokument auch sehen, falls es geöffnet werden muss.
    Dann muss man auch nicht prüfen, ob es bereits geöffnet ist.

    LGM
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 1. Februar 2016
    #6
  7. Hier kann man nur raten worum es geht.
    Hast du überhaupt Erfahrung im Umgang mit VBA?
    Bitte um eine verständliche Erklärung und ab wo du ein Problem hast.

    LGM
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 1. Februar 2016
    #7
  8. Word Dokument aus Access füllen

    Sorry, dass ich es so unklar beschrieben habe.
    Nein, mit VBA hab ich bis jetzt keine Erfahrung *bawling
    SQL, Access, PHP, Typo3, 3D CAD..... aber VBA war noch nicht da.
    Das mit dem:
    i=1
    .FormFields("txtSerialNo(i)").Result = Me.SerialNo(i)
    i=i+1

    In dem Fall ist i eine Variable die bei jedem durchfaul um 1 addiert wird, dann wird noch geprüft ob Me.SerialNo(i)
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  9. Hallo,

    du musst den Index mit dem Feldnamen verketten, schließlich ist er doch Teil des Namens, wenn ich das richtig verstanden habe.
    Code:
    Oder worüber soll die Schleife laufen? Was ist "Me.SerialNo(i)"?
     
    MaggieMay, 2. Februar 2016
    #9
  10. Hallo,

    Me.SerialNo ist Datenfeld aus Access.
    txtSerialNo ist Bookmark im Word Dokument.
     
  11. Warum indizierst du es dann?
    Woher sollen die Daten denn kommen, die du in das Word-Dorkument einfügen willst?
    Wenn es eine Abfrage ist, so brauchst du ein Recordset, dass du durchlaufen kannst.
    Hast du dafür auch 10 Formularfelder angelegt?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    MaggieMay, 3. Februar 2016
    #11
  12. Das Hauptproblem wird sein, dass Gerar wohl einen Datensatz liest, dann ein Word-Dok ausfüllt, abschliesst, den nächsten Datensatz liest und ein neues Word-Dok aufmacht.

    Die Logik müsste aber wohl sein, dass er ein neues Word-Dok aufmacht, dann alle Datensätze liest, die in dasselbe Dok müssen, z.b. eben die Serial-Nr 1 bis 10, die in 10 Datensätzen ist.
    Und erst bei Wechsel - was den Wechsel bewirkt muss Gerar wissen - das Word-Dok abschliesst und wieder ein neues aufmacht.
     
  13. Word Dokument aus Access füllen

    Hi,
    Es macht eher wenig Sinn hier x-Bookmarks vorzuhalten, die je nach Anzahl befüllt werden.
    Idealerweise füllt man hier einfach eine Tabelle mit den Daten aus dem Recordset. Dann ist es auch vollkommen wurscht ob es 10 oder 100 Datensätze sind, die zu schreiben sind.
    Nach jedem Loop wird die Tabelle um eine weitere Zeile ergänzt, solange es Datensätze gibt.
     
    fredfred, 6. Februar 2016
    #13
Thema:

Word Dokument aus Access füllen

Die Seite wird geladen...
  1. Word Dokument aus Access füllen - Similar Threads - Word Dokument Access

  2. Word-Dokument über Access erstellen und bearbeiten

    in Microsoft Access Hilfe
    Word-Dokument über Access erstellen und bearbeiten: Hallo, ich arbeite an einem Datenbanksystem für ein Labor und habe mich im Forum angemeldet, weil ich an einem Punkt nicht weiterkomme. Ich erstelle Word-Dokumente über Access und befülle diese...
  3. word dokument aus access füllen; Fehler 6028

    in Microsoft Access Hilfe
    word dokument aus access füllen; Fehler 6028: Halllo, ich mochte das Dokument test aus access füllen Code: Private Sub Befehl8_Click() Dim wordobj As Object, worddoc As Object Dim VORLAGE As String Set wordobj =...
  4. Mit Access mehrere Word-Dokumente nach bestimmten Zeichenfolgen durchsuchen

    in Microsoft Access Hilfe
    Mit Access mehrere Word-Dokumente nach bestimmten Zeichenfolgen durchsuchen: Hallo Leute, möchte folgende Idee umsetzen: In einer Tabelle von Access möchte ich mehrere Zeichenfolgen untereinander eingeben z.b.: 1.Zeile MT-2011-3789 2.Zeile MT-2010-467 usw. Nun habe ich...
  5. Exportieren von Access-Daten in ein Word-Dokument

    in Microsoft Access Tutorials
    Exportieren von Access-Daten in ein Word-Dokument: Exportieren von Access-Daten in ein Word-Dokument Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr......
  6. Access Tabelle in Word-Dokument

    in Microsoft Access Hilfe
    Access Tabelle in Word-Dokument: Hallo. Ich habe nun eine Lösung nach langem Suchen und Probieren gefunden. Es sollen Datensätze aus ein Access Tabelle in eine Word-Vorlage übergeben werden. Bei dem 1. Datensatz werden die...
  7. Word Dokument aus Formular erstellen mit Tabelleneinträgen

    in Microsoft Access Hilfe
    Word Dokument aus Formular erstellen mit Tabelleneinträgen: Hallo Community, ich habe eine Frage. Ich habe ein Formular erstellt um Namen, Vornamen und Adresse in meine Datenbank einzutragen. Jetzt möchte ich einen Button programmieren, um automatisch...
  8. Access Datenbank in Word Dokument

    in Microsoft Access Hilfe
    Access Datenbank in Word Dokument: HILFE Ich habe eine Access Datenbank mit dem Namen Personal. Darin sind alle Details jeder einzelner Person (z.B. Name, Vorname, Zimmer, Tel. us.w.) Diese Datenbank ist im Access alphabetisch...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden