Страницы: 1
RSS
Вставка изображений в Word через Excel.
 
Всем привет!
Маленькая преамбула.
Имеются файл Excel и связанный документ Word.
Документ имеет довольно таки сложную структуру и оформление, трудно повторяемое в Excel (это на вопрос - почему все не в Excel).
B тоже время, в зависимости от начальных условий, в нем производится расчет примерно по 40 параметрам. Поэтому и связка.
По ходу дела, опять же, в зависимости от начальных условий, в документ необходимо вставлять несколько иллюстраций (иногда до 20); большинство из них формата А4. Попробовал через связи - уже после третьего рисунка Excel на моей машине виснет наглухо, да и связи начинают работать нестабильно.
Выход - вставлять рисунки сразу в Word.

И так задача:
в папке находятся:
Doc1 (см. файл); Книга1 и папка 1 с рисунками 1.ipg и 2.ipg (рисунки любые, не гружу из-за размеров).
В зависимости от выбранного числа необходимо вставить соответствующий рис. из папки 1   в Doc1, в нужное место.

Если кто может помочь - буду благодарен.
Бюджет, увы, минимальный.
 
В самом Word изображение вставляется примерно так:
Код
Sub InsertPikture()
    Selection.Find.Text = "Ниже изображение из папки 1"
    Selection.Find.Execute
    Selection.EndKey Unit:=wdLine
    Selection.TypeParagraph
    Selection.InlineShapes.AddPicture FileName:= _
        "C:\Users\User\Desktop\Word+Excel\1\1.png", LinkToFile:=False, _
        SaveWithDocument:=True
End Sub
 
а почему именно через excel, а не через input box в ворде?
 
Конечная цель - создать документ ПДФ.
Как я уже сказал, структура такова, что в Excel ее воспроизвести довольно проблематично; в тоже самое время нужны в расчеты, а которых используются табличные данные. Да и в Word я не смыслю. Поэтому все управление идет через Excel.
Файл ПДФ создается, но счас потребовалась вставка рисунков.
 
Михаил, в Вашей процедуре InsertPikture везде перед Selection должно стоять имя, под которым у Вас фигурирует объект Word.Application и  wdLine замените на число 5
Что-то типа
Код
    With WApp
    .Selection.Find.Text = "Ниже изображение из папки 1"
    .Selection.Find.Execute
    .Selection.EndKey Unit:=5
    .Selection.TypeParagraph
    .Selection.InlineShapes.AddPicture FileName:= _
        "C:\Users\User\Desktop\Word+Excel\1\1.png", LinkToFile:=False, _
        SaveWithDocument:=True
End With
Изменено: Pelena - 19.01.2017 11:33:04
 
Да, Pelena, спасибо.
Про With я знаю, а вот про wdLine  отдельное спасибо.
Счас я пока в ворде отладку делаю.
 
А вообще, вставку из Excel удобнее делать через закладки.
Если что, пишите на почту, помогу безвозмездно)
 
Да, Лена, спасибо!
Скорее всего напишу, чуть позже.
Счас с объектом Range в Word разбираюсь.
 
Всем спасибо, а особенно Елене (Pelena) и Андрею (RAN) за конкретные подсказки.
Все получилось.
Страницы: 1
Наверх