Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Marco71 am Dezember 27, 2016, 20:54:21

Titel: Verknüpfung Word-Dokument
Beitrag von: Marco71 am Dezember 27, 2016, 20:54:21
Hallo, ich habe in meiner Datenbank ein Worddokument mit Textmarken verknüpft: .Documents.Open ("C:\Dateien_Klientenverwaltung\Einwilligung Datenschutz.dotx") 'das zu öffnende Worddokument
Diese Lösung ist leider statisch. Der Pfad muss direkt im Code hinterlegt werden.
Ich möchte, dass der jeweilige Benutzer das Dokument auswählen kann, wenn er auf den Button klickt, und die letzte Auswahl beim nächsten Aufruf als Standard hinterlegt ist. Kann mir jemand helfen?
Hier der komplette Code, den ich momentan benutze:
Private Sub Befehl346_Click()
Dim objWord As Word.Application
Set objWord = CreateObject("Word.Application")
With objWord
.Visible = True
.Documents.Open ("C:\Dateien_Klientenverwaltung\Einwilligung Datenschutz.dotx") 'das zu öffnende Worddokument
.ActiveDocument.Bookmarks("Name").Select 'gehe zur Textmarke "Anrede"
.Selection.Text = Me.Klienten_Name & ", " & Me.Klienten_Vorname 'schreibe in das Feld, was im Formular im Feld Anrede steht
.ActiveDocument.Bookmarks("Geburtsdatum").Select
.Selection.Text = Me.Klienten_Geburt
.ActiveDocument.Bookmarks("Adresse").Select
.Selection.Text = Me.Klienten_PLZ & " " & Me.Klienten_Ort & ", " & Me.Klienten_Adresse
End With
Set objWord = Nothing
End Sub
Eine Lösung wäre echt grandios!
Titel: Re: Verknüpfung Word-Dokument
Beitrag von: DF6GL am Dezember 27, 2016, 21:24:42
Hallo,

Zitat"..dass der jeweilige Benutzer das Dokument auswählen kann.."


dabei hilft Dir ein Datei-Auswahldialog, (z.b. Application.Filedialog aus der MSO-Bibliothek).

Der ausgewählte Dateinamen kann für spätere Verwendung in

-- einer Tabelle
-- in einer benutzerdefinierten Eigenschaft
-- in einer ini-Datei
-- in der Windows-Registry

hinterlegt werden.

Titel: Re: Verknüpfung Word-Dokument
Beitrag von: Joss am Dezember 28, 2016, 10:38:33
Hallo Marco71,

einen Dateidialog findest du z.B. im DBWiki.
http://dbwiki.net/wiki/VBA_Tipp:_Dateiauswahl-Dialog_1 (http://dbwiki.net/wiki/VBA_Tipp:_Dateiauswahl-Dialog_1)
http://dbwiki.net/wiki/VBA_Tipp:_Dateiauswahl-Dialog_2 (http://dbwiki.net/wiki/VBA_Tipp:_Dateiauswahl-Dialog_2)

Gruß
Josef
Titel: Re: Verknüpfung Word-Dokument
Beitrag von: FredFred am Dezember 28, 2016, 14:02:07
Offensichtlich wird hier ein Template verwendet .dotx
Insofern sollte man das Dokument mit .ADD öffnen und nicht mit .OPEN, um das Template zu erhalten.
Anbei ein etwas aufgeräumteren Codevorschlag zu dem bislang gezeigten:

Dim objWord As Word.Application
    Dim docWord As Word.Document


    Set objWord = CreateObject("Word.Application")
    With objWord
        .Visible = True

        Set docWord = .Documents.Add("C:\irgendwas\dok1.dotx")     'das zu öffnende Worddokument
        With docWord
            .Bookmarks("Name").Range.Text = Me.Klienten_Name & ", " & Me.Klienten_Vorname    'schreibe in das Feld, was im Formular im Feld Anrede steht
            .Bookmarks("Geburtsdatum").Range.Text = Me.Klienten_Geburt
            .Bookmarks("Adresse").Range.Text = Me.Klienten_PLZ & " " & Me.Klienten_Ort & ", " & Me.Klienten_Adresse
        End With
    End With
         Set objWord = Nothing