Приветствую всех! Написал макрос в Excel для заполнения шаблона Word. Принцип простой (как и выше), два столбца: 1-метки (имена закладок), 2-й название поля, 3й - текст для подстановки. По двойному клику в первой строке идет подстановка содержимого столбца.
И тут беда... в шаблоне информация повторяется... а двух закладок с одним именем не может быть. Пробовал через перекрестные ссылки, но новом документе (заполненном) закладки удаляются и соответственно перекрестные ссылки не работают(или может я не правильно их создаю - первый раз с шаблонами в word пересекаюсь). Почитал в сети, решения не увидел. Везде простые формы (без повторения), либо каждому повторению присваивается новое имя закладки (мне такой вариант не очень подходит, так как закладок в каждой форме разное число, а "исполнительная таблица" планируется одна).
Пробовал так же через замену текста, но тогда слетает форма документа
В приложении набросал примерчик, если кто подскажет пути решения буду благодарен
Приветствую всех! Написал макрос в Excel для заполнения шаблона Word. Принцип простой (как и выше), два столбца: 1-метки (имена закладок), 2-й название поля, 3й - текст для подстановки. По двойному клику в первой строке идет подстановка содержимого столбца.
И тут беда... в шаблоне информация повторяется... а двух закладок с одним именем не может быть. Пробовал через перекрестные ссылки, но новом документе (заполненном) закладки удаляются и соответственно перекрестные ссылки не работают(или может я не правильно их создаю - первый раз с шаблонами в word пересекаюсь). Почитал в сети, решения не увидел. Везде простые формы (без повторения), либо каждому повторению присваивается новое имя закладки (мне такой вариант не очень подходит, так как закладок в каждой форме разное число, а "исполнительная таблица" планируется одна).
Пробовал так же через замену текста, но тогда слетает форма документа
В приложении набросал примерчик, если кто подскажет пути решения буду благодарен Benos
но новом документе (заполненном) закладки удаляются
Когда-то использовала доп. процедуру, чтобы закладка оставалась [vba]
Код
Sub UpdateBookmarks(ByVal NameOfBookmark As String, ByVal ContentOfBookmark As Variant) 'процедура добавления содержимого к закладке. Необходима, чтобы после добавления содержимого закладка восстанавливалась для использования в перекрестных ссылках On Error Resume Next Dim rng As Object Dim bm As Object Set bm = WDoc.Bookmarks Set rng = bm(NameOfBookmark).Range rng.Text = ContentOfBookmark bm.Add NameOfBookmark, rng End Sub
[/vba] И добавила ещё в Ваш макрос строчку для обновления полей (перекрестных ссылок)
но новом документе (заполненном) закладки удаляются
Когда-то использовала доп. процедуру, чтобы закладка оставалась [vba]
Код
Sub UpdateBookmarks(ByVal NameOfBookmark As String, ByVal ContentOfBookmark As Variant) 'процедура добавления содержимого к закладке. Необходима, чтобы после добавления содержимого закладка восстанавливалась для использования в перекрестных ссылках On Error Resume Next Dim rng As Object Dim bm As Object Set bm = WDoc.Bookmarks Set rng = bm(NameOfBookmark).Range rng.Text = ContentOfBookmark bm.Add NameOfBookmark, rng End Sub
[/vba] И добавила ещё в Ваш макрос строчку для обновления полей (перекрестных ссылок)Pelena
Pelena, запустил код. Закладки и ссылки в шаблоне остались, но подстановки в шаблон не произошло. По коду даже вариантов где что можно поменять нет Как я понял за подстановку отвечает [vba]
Pelena, запустил код. Закладки и ссылки в шаблоне остались, но подстановки в шаблон не произошло. По коду даже вариантов где что можно поменять нет Как я понял за подстановку отвечает [vba]
Еще один, возможно, глупый вопрос... При подстановке идет подстановка текста без учета формата текста в Excel. Т.е. если в Excel ячейка "Дата" и выбран шаблон "12 мая 2020 г.", а по факту в нее забит текст "12.05.2020"... то в шаблон подставляется "12.05.2020" , а не по форме Excel "12 мая 2020 г." В принципе не важно, но мало ли есть какое-нибудь простое решение, о котором я не знаю
Еще один, возможно, глупый вопрос... При подстановке идет подстановка текста без учета формата текста в Excel. Т.е. если в Excel ячейка "Дата" и выбран шаблон "12 мая 2020 г.", а по факту в нее забит текст "12.05.2020"... то в шаблон подставляется "12.05.2020" , а не по форме Excel "12 мая 2020 г." В принципе не важно, но мало ли есть какое-нибудь простое решение, о котором я не знаю Benos