Здравствуйте! Существует таблица Word, в которой каждая новая строка не является новой ячейкой, а просто перенос строки (Enter-ом создавали новую строку). Я пытаюсь извлечь все строки таблицы в ячейки Excel. Но поскольку этой не обычный перебор строк таблицы циклом, необходима помощь в создании макроса, который сможет выделить текст до переноса строки, записать его в ячейку Excel и т.д. в цикле каждую новую строку. Такое вообще реально сделать? Вот код для подключения к документу Word:
Код
Sub OpenWord()
Dim objWrdApp As Object, objWrdDoc As Object, avFiles, i As Integer, tbl As Object
avFiles = Application.GetOpenFilename _
("Word files(*.doc*),*.do*", 1, "Выберите таблицу", , False)
If VarType(avFiles) = vbBoolean Then
Exit Sub
End If
Set objWrdApp = CreateObject("Word.Application")
objWrdApp.Visible = False
Set objWrdDoc = objWrdApp.Documents.Open(avFiles)
Set tbl = objWrdDoc.Tables(1)
ActiveSheet.Cells(1, 1) = tbl.Cell(2, 1).Range.text
objWrdDoc.Close True
objWrdApp.Quit
Set objWrdDoc = Nothing: Set objWrdApp = Nothing
End Sub
Если VBA не принципиально, то можно через PQ решить вашу задачу. Но есть один нюанс, данное решение оно годное только для данного примера. если в других столбцах будут такие же ячейки разделенные переносом каретки, то их придется как-то соотносить с другими столбцами. З.Ы. подправил ваш пример и свой запрос под описанную ранее коллизию.