Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
784to788
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Word-Formularfeld in Excel übertragen

Word-Formularfeld in Excel übertragen
21.07.2006 12:14:18
Wolfgang
Hallo,
ich habe mehrere identische Word-Formulare und möchte aus diesen die Einträge in den Formularfeldern in ein Excel (zu Auswertungszwecken) zusammenfassen.
so weit fonktionierts schonmal:

Sub einlesen()
Dim Wordapp As Object
Dim Worddoc As Object
pfad = Worksheets("Wertevorrat").Cells(3, 3).Value
i = 0
Do
i = i + 1
Datei = Worksheets("Dateinamen").Cells(i + 2, 1).Value
Dateipfad = pfad & Datei
If Datei <> "" Then
Set Wordapp = CreateObject("Word.Application")
Set Worddoc = Wordapp.Documents.Open(Dateipfad)
Wordapp.Visible = True
Worksheets("Auswertung").Cells(i, 1) = Worddoc.Name
Worksheets("Auswertung").Cells(i, 2) = ?
Worddoc.Close
End If
Loop Until Datei = ""
Wordapp.Quit
End Sub

Wie spreche ich nun die Formularfelder an?
Es sind Textfelder, Auswahlfelder und Checkboxen.
Danke!
Wolfgang

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Word-Formularfeld in Excel übertragen
21.07.2006 13:40:15
fcs
Hallo Wolfgang,
hab mich da jetzt mal schlau gemacht bzw. etwas rumprobiert.
Jedes Formular-Element (Textfeld, Checkbox oder Dropdownfeld) erhält von Word standardmäßig im Eigenschaftenfeld "Textmarke" eine eindeutige Bezeichnung. Unter dieser Bezeichnung kann man die Elemente ansprechen, um den Wert auszulesen. Falls nicht für alle Elemente Textmarken angelegt sind, dann muß man mit Zählnummern der Elemente arbeiten statt mit den Namen, ist aber mühseliger.
Hier dein Makro mit den Anpassungen für das Auslesen. Ich habe die Variable "Worddoc" jetzt als "Document" deklariert. Dies macht das Handling der Methoden und Eigenschaften einfacher. Außerdem muss du, falls noch nicht geschehen, im VBA-Editor unter Extras-Verweise die "Microsoft Word x.y Object Library" als verfügbar markieren.
Gruß
Franz

Sub einlesen()
Dim Wordapp As Object
Dim Worddoc As Document
Pfad = Worksheets("Wertevorrat").Cells(3, 3).Value
i = 0
Do
i = i + 1
Datei = Worksheets("Dateinamen").Cells(i + 2, 1).Value
Dateipfad = Pfad & Datei
If Datei <> "" Then
Set Wordapp = CreateObject("Word.Application")
Set Worddoc = Wordapp.Documents.Open(Dateipfad)
Wordapp.Visible = True
Worksheets("Auswertung").Cells(i, 1) = Worddoc.Name
'Für Textfelder
Worksheets("Auswertung").Cells(i, 2) = Worddoc.FormFields("Text1").Range.Text
Worksheets("Auswertung").Cells(i, 3) = Worddoc.FormFields("Text2").Range.Text
'Für Checkboxen
Worksheets("Auswertung").Cells(i, 4) = Worddoc.FormFields("Kontrollkästchen1").CheckBox.Value
'Für Dropdown-Listen
Worksheets("Auswertung").Cells(i, 5) = Worddoc.FormFields("Dropdown1").DropDown.ListEntries _
(Worddoc.FormFields("Dropdown1").DropDown.Value).Name
Worddoc.Close
End If
Loop Until Datei = ""
Wordapp.Quit
End Sub

Anzeige
AW: Word-Formularfeld in Excel übertragen
21.07.2006 13:47:32
Wolfgang
Hallo,
danke für deine Mühe.
Ich bin vor wenigen Minuten selber drauf gekommen.
Mein Code sieht so aus:
Worksheets("Auswertung").Cells(i, 2) = Worddoc.FormFields("Text1").Result
Ich hatte schon vor Stunden fast das Selbe stehen, wer soll schon wissen dass es im Word ".Result" statt ".Value" heisst.
liefert für alle Typen brauchbare Ergebnisse:
Textfeld: der eingetragene Text
Auswahlfeld: die Auswahl
Checkbox: 0 oder 1
Danke!
Wolfgang
AW: Word-Formularfeld in Excel übertragen
21.07.2006 13:48:33
Wolfgang
Hallo,
danke für deine Mühe.
Ich bin vor wenigen Minuten selber drauf gekommen.
Mein Code sieht so aus:
Worksheets("Auswertung").Cells(i, 2) = Worddoc.FormFields("Text1").Result
Ich hatte schon vor Stunden fast das Selbe stehen, wer soll schon wissen dass es im Word ".Result" statt ".Value" heisst.
liefert für alle Typen brauchbare Ergebnisse:
Textfeld: der eingetragene Text
Auswahlfeld: die Auswahl
Checkbox: 0 oder 1
Danke!
Wolfgang
Anzeige
AW: Word-Formularfeld in Excel übertragen
21.07.2006 14:24:25
fcs
Hi,
über "Result" bin ich auch nicht gestolpert, weil ich zu sehr auf "Value" fixiert war. Ich bin so halt bei der etwas komplizierteren Variante zum Auslesen der Werte gelandet, hab aber wieder einiges über die Eigenschaften von Formularfeldern in Word gelernt und der Möglichkeit deren Werte per Makro zu setzen/auszulesen.
mfg
Franz
AW: Word-Formularfeld in Excel übertragen
21.07.2006 13:48:37
Wolfgang
Hallo,
danke für deine Mühe.
Ich bin vor wenigen Minuten selber drauf gekommen.
Mein Code sieht so aus:
Worksheets("Auswertung").Cells(i, 2) = Worddoc.FormFields("Text1").Result
Ich hatte schon vor Stunden fast das Selbe stehen, wer soll schon wissen dass es im Word ".Result" statt ".Value" heisst.
liefert für alle Typen brauchbare Ergebnisse:
Textfeld: der eingetragene Text
Auswahlfeld: die Auswahl
Checkbox: 0 oder 1
Danke!
Wolfgang
Anzeige

41 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige