Страницы: 1
RSS
Ваимодействие Excel и Word: открыть Word и сформировать текст по таблице
 
Вопрос немного выходящий за пределы Excel, но в пределал пакета Офис... Может кто подсказать как реализвать взаимодействия эксель и ворд в плане:
есть таблица, получаемая с помощью макроса, нужно чтобы открылся ворд и сформировал текст по таблице.... в самом экселе у меня это реализовано с помощью "Сцепить" и кучи условий, но при копировании в ворд текст приходится долго форматировать...
 
Заготавливаете файл ворда с линком на эту таблицу (чтоб данные автоматически обновлялись), открываете его этим макросом после формирования своих данных.
 
Создаем объект Ворд и потом работаем с его объектной моделью:
Код
dim wdApp as Object  
set wdApp = CreateObject("Word.Application") 
... 
С уважением,
Федор/Все_просто
 
Hugo,Вы не могли бы проконсультировать или указать ресурс, на котором можно почитать как правильно заготовить болванку для ворда с ссылкой на таблицу?
 
был пример недавно - Создание договора в word на основе данных их excel  

если надо просто всё перекинуть в ворд - я пользуюсь функцией под спойлером,
написанной по примеру от ZVI отсюда (поправила линк)... немного под свои нужды - тоже в качестве примера

Скрытый текст
Изменено: JeyCi - 28.01.2015 11:14:49
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
 
Копируете свой диапазон в Экселе, спецвставкой вставляете в Ворд как линк на объект.
Где посмотреть видео - думаю что-то можно найти в ютубе. Не искал.
 
Цитата
нужно чтобы открылся ворд и сформировал текст по таблице
Скажите, а можно поподробнее про формирование текста по таблице? Если речь идет о подстановке из таблицы значений в некие отведенные места в документе - может быть имеет смысл использовать инструмент Word "слияние"?
Кому решение нужно - тот пример и рисует.
 
Да, можно использовать слияние, можно копировать данные в метки в Ворде, где-то примерно так:

Код
Sub Вставить_в_отчет()

Dim WA As Object, WD As Object

Set WA = CreateObject("Word.Application")
Set WD = WA.Documents.Open("C:\ШАБЛОНЫ\связка\shablon.docx")

WD.Range.Find.Execute FindText:="{$НОМПАТЕНТ01}", ReplaceWith:=Cells(2, 2), Replace:=2
WD.Range.Find.Execute FindText:="{$Наименовпатент01}", ReplaceWith:=Cells(2, 3), Replace:=2
WD.Range.Find.Execute FindText:="{$Названпатент01}", ReplaceWith:=Cells(2, 4), Replace:=2
WD.Range.Find.Execute FindText:="{$МПКпатент01}", ReplaceWith:=Cells(2, 5), Replace:=2
WA.Visible = True
Set WA = Nothing

End Sub
 
Пытливый,вот пример таблицы... если вставлять со связью, то текст вставляется как таблица...
 
Попробуйте использовать "Рассылки" и связь Ворда с Экселем, на сайте есть пример как это делается "в разделе видео", это будет намного проще если вы используете только строку ИТОГО ЗАДЕРЖЕК в общем своде и сможете применять любое форматирование текста средствами Ворд
Единственный нюанс, все выходные значения должны быть размещены в одной строке  
Изменено: amarf - 28.01.2015 12:00:48
Необходимо не только знать, но и уметь использовать это знание, ведь самые гениальные решения наиболее просты
 
всем спасибо за помощь! проблему решил!
теперь возникла другая: как при сохранении файла ворд из макроса в его имя вставить переменную? в экселе все просто dim n и n = ячейка где вводится нужная инфа...а в ворде как это реализовать?
Изменено: Sanya4081 - 19.02.2015 09:59:57
Страницы: 1
Читают тему
Наверх