Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Inhalt eines Feldes nach Word kopieren





Frage

Servus miteinander, ich habe ein (oder evtl. auch mehrere) Textfeld(er) in einem Formular und möchte den Inhalt dieses/r Feldes/r mit einem Button in ein leeres Worddokument kopieren. Hat jemand hierzu eine Idee? Danke und Gruß Klaus

Antwort 1 von ThomasG

Keine Ahnung welche Datenbank / Programmiersprache zu benütz. Aber du könntest die einzelnen Feldinhalte zusammenfügen und in die Windows-Zwischenablage kopieren

Antwort 2 von klausinger

Sorry, vergaß ich zu erwähnen.
Datenbank ist MS Access 97 und ich wollte nicht, dass es manuell über die Zwischenablage funzt sondern über eine Schaltfläche!
Gruß
Klaus

Antwort 3 von oliverV

Hallo Klaus,

eine "halbe" Lösung hätte ich anzubieten:

Du kannst mit einer Schaltfläche den Inhalt eines Feldes auslesen und in die Zwischenablage kopieren.
[Code]
Me!Feldname.SetFocus
DoCmd.RunCommand acCmdCopy

Das Einfügen in Word wäre dann noch manuell mit Strg+V.

Ansonsten könntest du die Formulardaten nach Word exportieren, da du aber nur ein Feld haben willst, dürfte dort das nächste Problem warten.

Gruß

Oliver

Antwort 4 von ThomasG

Dann geht es nur, indem Du eine Instanz von Word definierst und dann füllst. Kann kein Access, in meiner Programmiersprache wäre das NewObject() bzw. CreateObject() mit Parameter "Word.Application". Vielleicht googles Du mit diesen Wörtern etwas.

Gruß
Thomas

Antwort 5 von klausinger

Servus miteinander,

danke für Eure Tipps, ich habe das nun so gelöst:

 
Dim objWord As Word.Application
Set objWord = CreateObject("Word.Application")
With objWord
        .Visible = True
        .Documents.Add
        .Selection.TypeText Text:=Me!Feld
        ´Anmerkung: öffnet leeres Dokument und fügt dort ein, möglich wäre auch ein vorhandenes Dok mit Einfügetextmarken zu öffnen:
        ´.Documents.Open ("C:\Pfad\Dateiname.doc oder wasweißdennich.dot")
        ´zur Textmarke "Feld1" gehen und dort Text einfügen
        ´.ActiveDocument.Bookmarks("Feld1").Select
        ´.Selection.Text = Me!Feld1
        ´läßt sich für mehrere Textmarken und Felder beliebig fortsetzen
End With

´man könnte jetzt gleich automatisch drucken, speichern, schließen, was auch immer ....
Set objWord = Nothing


Das funzt schonmal ganz gut so ...
Schönen Tag zusammen