Ich kann folgendes Problem nicht lösen:
Ich möchte nur den ersten Satz eines Word-Dokuments aus einer Tabelle kopieren.
Momentan sieht das Programm so aus:
Sub DocsEinlesen()
'----- Deklaration -------------------
Dim i!, j!, ez!, lz!
Dim strDName As String
Dim strZielordner As String, strDateiname As String
Dim blnFile As Boolean
Dim strPath As String
'----- Variablen ----------------------
'Die folgenden Zahlen müssen an die Tabelle angepaßt werden:
ez = 4 'erste Zeile mit Daten
lz = 1617 'letzte Zeile mit Daten
'Hier den Pfad verändern
strZielordner = "X:\IT-Dokumentation\Programme\"
'Hier den Dateinamen verändern
For i = ez To lz
strDateiname = Cells(i, 2).Value
strDName = strZielordner & strDateiname & ".doc"
strPath = "strDName"
blnFile = Len(Dir(strPath))
MsgBox blnFile
If blnFile = True Then
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Set WordApp = CreateObject("word.application")
WordApp.Visible = False
Set WordDoc = WordApp.Documents.Open(strDName)
WordDoc.Tables(2).Rows(1).Range.Copy //hier ist das Problem
Cells(i, 4).PasteSpecial xlPasteValues //oder hier
WordDoc.Close 'close Word doc
WordApp.Quit ' close Word
Else
Next i
End Sub
Den Befehl "Cells(i, 4).PasteSpecial xlPasteValues" möchte ich nun so abändern, dass er nach einem Punkt oder Ausrufereichen, oder beim Sprung in eine neue Zeile das Einfügen abbricht. Es wäre wahrscheinlich eleganter, wenn man die Überprüfung schon beim Copy-Befehl statt finden lässt.
Danke für die Hilfe,
lg
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP