Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel zeile in Word schreiben
#1
Hallo nochmal und schon wieder habe ich eine doofe frage.
ich habe folgenden Code. 

Private Sub CommandButton_Eingabe_Click()
Dim last As Integer

Worksheets("Tabelle1").Activate
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
Cells(last, 1).Value = TextBox_Serial
Cells(last, 2).Value = TextBox_IMEI
Cells(last, 3).Value = TextBox_Emailadresse
Cells(last, 4).Value = TextBox_Vorname
Cells(last, 5).Value = TextBox_Nachname
Cells(last, 6).Value = TextBox_Lokation
Cells(last, 7).Value = TextBox_Adresse



dieser bewirkt das eingaben in einer Userform eine zeile im Excel sheet füllen.
nun möchte ich aber diese Zeilen auch noch direkt mit einem Word Formular verknüpfen so dass die Angaben direkt im Word Dokument drin stehen.
die Textmarker im Word Dokument habe ich schon gemacht.

könnt ihr mir da weiterhelfen?
Antwortento top
#2
Hi,

das würde ich von der anderen Seite her anpacken. Word hat eine Serienbrieffunktion, mit der du auch eine Exceltabelle als Datenquelle verwenden kannst. Das geht ganz einfach und ohne eine Zeile Code.
Schöne Grüße
Berni
Antwortento top
#3
Hallo erst mal und danke für deine Antwort.
leider ist das nicht möglich da es gleichzeitig geschehen soll und das mit jedem Userform aufs neue mit immer anderen daten.

kurz zum ziel beschrieb.

die bestehende UserForm trägt die Daten in eine Tabelle die als Daten Bank fungiert.
wenn ich da Daten eingebe muss ich einen Lieferschein (das besagte Word Dokument) ausfüllen und ich möchte das nicht zweimal in die Hand nehmen und eben direkt mit dem Eingeben der Daten auch das Word ausführen.
Antwortento top
#4
Hallo, 19

wenn du schon ein fertiges Dokument mit Textmarken hast, dann prinzipiell so: 21

Excel -> Word in Textmarken (Bookmarks)...

Oder du arbeitest mit Dokumentvariablen.
________
Servus
Case
Antwortento top
#5
Hallo Case,
besten dank und ich hab mir die Links angeschaut und bin erst mal völlig überfordert Smile
ich bin totaler VBA anfänger und verstehe das nicht super gut aber das Prinzip habe ich begriffen.
nur ich habe gedacht es geht mit dem selben klick wie auch die Einträge erfolgen und nicht separat. Denn dann müsste ich ja alles wieder aus der Tabelle filtern.

sowas habe ich mir vorgestellt.
ist das denn überhaupt möglich?


Worksheets("Tabelle1").Activate
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1

Cells(last, 1).Value = TextBox_Serial
Textbox_Serial = objDocument.Bookmarks(strBookmark1).value

Cells(last, 2).Value = TextBox_IMEI
Cells(last, 3).Value = TextBox_Emailadresse
Cells(last, 4).Value = TextBox_Vorname
Cells(last, 5).Value = TextBox_Nachname
Cells(last, 6).Value = TextBox_Lokation
Cells(last, 7).Value = TextBox_Adresse
Antwortento top
#6
Hallo, 19

na ja - warum soll das nicht gehen? In deinem Code vom "CommandButton" öffnest du einfach das Worddokument, schreibst die Daten und speicherst das Dokument. Fertig. 21
________
Servus
Case
Antwortento top
#7
leider lässt sich das Dokument nicht öffnen mache ich da was falsch am Code?


Private Sub CommandButton_Eingabe_Click()
Dim last As Integer
Dim strDoc As String
strDoc = ThisWorkbook.Path & _
        Application.PathSeparator & "C:\Users\IDM117654\Documents\Lieferschein.docx"

Worksheets("Tabelle3").Activate
last = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
Cells(last, 1).Value = TextBox02_Computername
Cells(last, 2).Value = TextBox02_Modell
Cells(last, 3).Value = TextBox02_Emailadresse
Cells(last, 4).Value = TextBox02_Vorname
Cells(last, 5).Value = TextBox02_Nachname
Cells(last, 6).Value = TextBox02_Lokation
Cells(last, 7).Value = TextBox02_Adresse
Antwortento top
#8
Hallo, 19

Bei einem festen Pfad so: 21

Code:
strDoc = "C:\Users\IDM117654\Documents\Lieferschein.docx"

Jetzt musst du natürlich noch öffnen. Dodgy
________
Servus
Case
Antwortento top
#9
ok das geht mit welchem Befehl? oder kann ich das Dokument einfach offen haben?
Antwortento top
#10
Hallo, 19

das steht doch in meinem Beispiel im Code in den Kommentaren alles drin. 21
________
Servus
Case
Antwortento top


Gehe zu:


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