|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.12.2017, 15:28 | #1 |
Форумчанин
Регистрация: 22.09.2008
Сообщений: 307
|
импорт данных таблицы word в excel макросом
Господа, есть постоянная трудность, хотелось бы оптимизироваться. Искал готовые продукты, не нашел...
От Клиента приходят файлы word (пример во вложение), которые нужно перевести в excel, для дальнейшей обработки. А именно значения из таблицы. Я это представляю так. В корень диска С выкладывается файл word. А в excelе кнопка с макросом, которая импортирует все содержимое wordа, переводит в цифровой формат (например 5,950.00 в 5950.00), удаляет "шт." или "шт", удаляет лишние Enter и пустые строки. Остальное можно будет уже ручками поправить.
Думайте глобально - действуйте локально!
|
15.12.2017, 16:40 | #2 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Так а сами что уже сделали для решения трудности? Тут не продукт надо искать, а блоки решения: как подключить ворд к екселю; открыть книгу; пройтись в цикле по таблице; получить значение из ячейки таблицы Ворда.... А тогда после всего - тяп-ляп в один макрос и вуаля
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
15.12.2017, 17:04 | #3 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Можно мой парсер настроить под эту задачу:
http://excelvba.ru/programmes/Parser.../WordDocuments |
18.12.2017, 07:49 | #4 |
Форумчанин
Регистрация: 22.09.2008
Сообщений: 307
|
Вуаля не получится. Наример как движком задать условия на удаление пустых строк?...
Думайте глобально - действуйте локально!
|
18.12.2017, 08:10 | #5 |
Форумчанин
Регистрация: 22.09.2008
Сообщений: 307
|
тут на сайте нашел один вариант, но он выдает немного другой результат. А что на что поменять, для моей головы уже неизвестно)
Public Function ReturnTextFromWordDocument(ByVal FileName As String) As String Dim n As Integer Dim wdApplication As Word.Application Dim wdDocument As Word.Document Set wdApplication = CreateObject("Word.Application") Set wdDocument = wdApplication.Documents.Open(FileNa me) Dim MyText MyText = wdDocument.Range.Text wdDocument.Close wdApplication.Quit Dim MyTex As String ReturnTextFromWordDocument = MyText End Function Public Sub Word() Dim MyText Dim n, m As Integer Dim Путь_к_файлу As String Dim a, b As Integer Путь_к_файлу = "C:\1.docx" ' пример "C:\1.docx",подставить свой a = ActiveCell.Column b = ActiveCell.Row MyText = Split(ReturnTextFromWordDocument(Пу ть_к_файлу), Chr(13), -1) For n = 0 To UBound(MyText) If MyText(n) = "" Then 'Пропуск пустых строк m = m + 1 GoTo 10 End If Cells(b + n - m, a) = MyText(n) 10 Next End Sub
Думайте глобально - действуйте локально!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Импорт таблицы word на лист excel | Sunrisefixtures | Microsoft Office Excel | 1 | 10.06.2017 17:05 |
импорт данных из word в excel vba | ele-ele | Microsoft Office Excel | 13 | 14.10.2016 04:43 |
Импорт данных с Excel в Word - очередное... | Mint86 | Microsoft Office Excel | 12 | 14.06.2012 19:47 |
Импорт данных из Word в Excel макросом | vv66 | Microsoft Office Excel | 17 | 27.01.2012 14:49 |
Импорт данных из Excel в Excel макросом | vnmz | Microsoft Office Excel | 2 | 04.03.2011 18:04 |