Страницы: 1
RSS
Извлечь данные из таблицы Word с переносом строк
 
Здравствуйте! Существует таблица 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
Изменено: Samyrro054 - 14.11.2019 10:51:06
 
Код
        ActiveSheet.Cells(1, 1) = Replace(Replace(tbl.Cell(2, 1).Range.Text, Chr(13) & Chr(7), ""), Chr(13), Chr(10))
 
RAN,Благодарю, практически то что нужно. Осталось только разбить переносы по ячейкам. Как доработаю - скину результат. Ещё раз спасибо!
 
Нужно давать ссылку на решение там, где разместили дубль темы
 
Если VBA не принципиально, то можно через PQ решить вашу задачу.
Но есть один нюанс, данное решение оно годное только для данного примера. если в других столбцах будут такие же ячейки разделенные переносом каретки, то их придется как-то соотносить с другими столбцами.
З.Ы. подправил ваш пример и свой запрос под описанную ранее коллизию.
Изменено: PooHkrd - 14.11.2019 12:03:46 (подправил запрос)
Вот горшок пустой, он предмет простой...
 
Ответил здесь: Извлечь данные из таблицы Word с переносом строк
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Наверх