Дмитрий Щербаков(The_Prist), Добрый день! Спасибо Вам за помощь и ответы.
Конечно самостоятельные попытки решить задачу были и есть фрагменты кода. Просто решил получить независимые подходы и не путать всех своим кодом, а спросил про идеи и объекты и методы VBA,
которые помогут решить эти задачи.
Задачи разбил на части ибо полная постановка тем более не найдет отклик у участников форума.
На этом и других форумах искал подобные задачи или их фрагменты, на авторов которых ниже есть ссылки.
И если задача тянет на коммерческую, как вы это заметили, то мы и это можем обсудить по почте без проблем.
Идея, которая мною рассматривалась была следующая - использовались в тексте скрытые символы, например "(|" или "!|" и другие. Что вообще-то далеко не всегда неудобно.
Эти скрытые символы, размещались заранее в тексте документа, в нужных местах.
Например, где нужно вставить две картинки. Это могут быть например на последней странице документа подпись и печать.
Это может быть скрытый текст в колонтитулах или ячейках в таблице.
И также возможна вставка подписи или другой картинки к нижний колонтитул на каждой странице, кроме последней.
Далее код ищет скрытые символы и собственно в эти места вставляет нужный текст и картинки.
На форумах нашел несколько схожих задач.
Например:
ресурс ExcelWorld.ru, участник форума ANVG - использовал такой код для размещения картинки в ячейку талицы
Dim p As InlineShape
Set p = ThisDocument.Tables(1).Rows(2).Cells(2).Range.InlineShapes.AddPicture("d:\path\name.png", False, True)
‘ также вопрос обсуждался с Галиной (shanemac51), форума cyberforum.ru и приемы через закладки как раз с ней и обсуждали.
‘ vagiinalover – другой кейс на этом же форуме., вставить картинку в определенное место документа
Часть кода для размещения картинки по месту найденных скрытых символов.
Word.ActiveDocument.Select
Find_text "(|" ' подпрограмма поиска скрытых символов
jp = Selection.Information(wdActiveEndPageNumber)
j1 = Selection.Range.Start
j1k = Selection.Range.End
Selection.Range.Font.ColorIndex = wdRed ‘ выделение найденного красным цветом
Word.ActiveDocument.Range(j1 + 4, j1 + 4).Select
oShape as PictureFormat
Set oShape = ActiveDocument.Shapes.AddPicture(FileName:="D:\ФАЙЛЫ\файл1.png")
oShape.WrapFormat.Type = wdWrapFront
'Рисунок перед текстом.
‘ или по другому
Selection.InlineShapes.AddPicture FileName:="D:\ФАЙЫ\файл1.png", _
LinkToFile:=False, SaveWithDocument:=True
‘ или через Shape
Dim Shapes_P as Word.Shape
Set Shapes_P = Selection.InlineShapes.AddPicture(FileName:="D:\ФАЙЛЫ\файл1.png", _
'LinkToFile:=False, SaveWithDocument:=True, Range:=Selection.Range).ConvertToShape
Shapes_P.WrapFormat.Type = wdWrapBehind ‘ разместить картинку перед текстом
'Shape_P.WrapFormat.Type =wdWrapFront ‘ разместить картинку за текстом