Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2016, 04:14   #1
kus_kus
 
Регистрация: 01.07.2010
Сообщений: 5
По умолчанию Выдернуть данные из word таблиц в файл Excel

Нужно обработать автоматом кучу однотипных анкет

Я хочу создать файл excel со след колонками: 1 колонка - имя файла, 2 колонка - ответы А, 3-я - ответы B и т.д

Нашёл кусок VBA
Код:
Sub ImportWordTable()
Dim wdDoc As Object
Dim wdFileName As Variant
Dim TableNo As Integer 'table number in Word
Dim iRow As Long 'row index in Excel
Dim iCol As Integer 'column index in Excel

wdFileName = Application.GetOpenFilename("Word files (*.doc),*.doc", , _
"Browse for file containing table to be imported")

If wdFileName = False Then Exit Sub '(user cancelled import file browser)

Set wdDoc = GetObject(wdFileName) 'open Word file

With wdDoc
    TableNo = 3
    With .Tables(TableNo)
        'copy cell contents from Word table cells to Excel cells
        For iRow = 3 To 3
            For iCol = 2 To .Columns.Count
                Cells(1, iCol - 1) = WorksheetFunction.Clean(.Cell(iRow, iCol).Range.Text)
            Next iCol
        Next iRow
        For iRow = 5 To 5
            For iCol = 2 To .Columns.Count
                Cells(1, iCol + 10) = WorksheetFunction.Clean(.Cell(iRow, iCol).Range.Text)
            Next iCol
        Next iRow
    End With
End With

Set wdDoc = Nothing

End Sub
Но возникло две проблемы:
1) обрабатывает один файл
2) значения вставляются в отдельные ячейки, а нужно бы в одну

Буду рад подсказкам
kus_kus вне форума Ответить с цитированием
Старый 08.10.2016, 08:58   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от kus_kus Посмотреть сообщение
Буду рад подсказкам
надо еще 2 файла: исходный Word, Excel с результатом как получается и как должно получиться
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 08.10.2016, 13:17   #3
kus_kus
 
Регистрация: 01.07.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
надо еще 2 файла: исходный Word, Excel с результатом как получается и как должно получиться
Parser.xlsxm - с макросом, на вкладке before что получается, на вкладке after что нужно.
Вложения
Тип файла: zip parser.zip (12.2 Кб, 27 просмотров)
Тип файла: docx source.docx (12.4 Кб, 45 просмотров)
kus_kus вне форума Ответить с цитированием
Старый 08.10.2016, 14:17   #4
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Тестируйте
Вложения
Тип файла: zip parser.zip (16.6 Кб, 77 просмотров)
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 08.10.2016, 15:15   #5
kus_kus
 
Регистрация: 01.07.2010
Сообщений: 5
По умолчанию Спасибо!

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Тестируйте
Работает просто класс! Ещё бы ссылку на файл в название вставить

Последний раз редактировалось kus_kus; 08.10.2016 в 15:18.
kus_kus вне форума Ответить с цитированием
Старый 08.10.2016, 15:21   #6
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Чего, куда?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 08.10.2016, 16:35   #7
kus_kus
 
Регистрация: 01.07.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Чего, куда?
Вот в первой строчке- ссылка на файл исходник
Вложения
Тип файла: zip parser.zip (22 байт, 169 просмотров)
kus_kus вне форума Ответить с цитированием
Старый 08.10.2016, 17:47   #8
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

не знаю, архив пустой
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 09.10.2016, 13:35   #9
kus_kus
 
Регистрация: 01.07.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
не знаю, архив пустой
Исправил
Вложения
Тип файла: zip parser.zip (9.3 Кб, 51 просмотров)
kus_kus вне форума Ответить с цитированием
Старый 09.10.2016, 14:34   #10
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
Cells(i, 1) = wdDoc.Name
ActiveSheet.Hyperlinks.Add Cells(i, 1), wdDoc.FullName  '<===ВСТАВИТЬ ЭТУ СТРОКУ В КОД
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование таблиц из excel в word junkey9009 Microsoft Office Excel 1 23.01.2012 20:53
Сравнить данные двух таблиц Excel по дате demiancz Общие вопросы Delphi 0 09.02.2011 12:24
импорт таблиц word в excel manowar_gub Microsoft Office Excel 6 13.12.2010 10:23
Встраивание таблиц Word или Excel yngwie Win Api 2 23.06.2009 20:55
Интеграция таблиц excel в документ word SergeyPaterson Microsoft Office Excel 1 29.05.2008 23:39