Aus Word-Docs lesen

Hallo zusammen

Ich arbeite mit Office 97. In einem Verzeichnis liegen eine beliebige Anzahl Wordformulare, die alle gleich aufgebaut sind.

Aus Access soll nun von jedem Word-Formular bestimmte Daten rausgelesen und in einer Tabelle abgelegt werden.

Frage: Wie kann ich aus Access direkt auf ein bestimmtes Feld eines Word-Docs zugreifen und ist das überhaupt eine gute Lösung (Stichwort Performance).

Danke und Gruss
Martin Bucher, Zürich

Hallo zusammen

Ich arbeite mit Office 97. In einem
Verzeichnis liegen eine beliebige Anzahl
Wordformulare, die alle gleich aufgebaut
sind.

Aus Access soll nun von jedem
Word-Formular bestimmte Daten rausgelesen
und in einer Tabelle abgelegt werden.

Frage: Wie kann ich aus Access direkt auf
ein bestimmtes Feld eines Word-Docs
zugreifen und ist das überhaupt eine gute
Lösung (Stichwort Performance).

Das geht recht einfach (aber langsam) per OLE-Automation, z.B. so:

Private Function LeseWord()
Const wdGoToBookmark = -1, wdWord = 2, wdExtend = 1
Const Path = "I:\Samples\"
 Dim Tmp, WordObj As Object, I As Long
 On Error Resume Next
 Tmp = ""
 Set WordObj = GetObject(, "Word.Application")
 If Err.Number 0 Then Set WordObj = CreateObject("Word.Application")
 On Error GoTo 0
' WordObj.Application.Visible = True
 For I = 1 To 3
 WordObj.Documents.Open FileName:=Path & "Test" & I & ".Doc", ReadOnly:=True
 With WordObj.Selection
 .Goto What:=wdGoToBookmark, name:="KundenNr"
 .MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend
 Tmp = Tmp & .Text & vbCrLf
 End With
 WordObj.Documents.Close
 Next I
 Set WordObj = Nothing
 LeseWord = Tmp
End Function

Reinhard