|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.03.2009, 09:27 | #11 |
Пользователь
Регистрация: 17.12.2008
Сообщений: 56
|
Спасибо за подсказку
Код:
|
30.03.2009, 10:54 | #12 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
Интересная задачка, которая обнажает еще одну странность Word.
Итак, в чем была задача? Вставить таблицу в колонтитул нечетной страницы каждого раздела. В предыдущих постах я ошибочно говорил, что в колонтитул первой страницы. Каюсь. Естественный ход мысли для выполнения этих действий Алёна продемонстрировала в своем коде. Давно я не видел такого грамотного кода. Честно. Порадовали старика. На первый взгляд, код совершенно правильный. Но не работает, как я смог убедиться. Вопрос: почему? В первый раздел таблица вставляется чудесно. Но затем строчка вставки таблицы дает ошибку Когда-то, в годы юности, при работе с разными разделами мне нужно было сделать разные колонтитулы в разных разделах. Стандартным средством Word мне это не удалось. Я выкрутился, создав для каждого раздела документ и связал их полями INCLUDETEXT. Решение не изящное, но прошло. Здесь похожая ситуация. Дело в том, что по умолчанию все колонтитулы в документе связаны друг с другом. Т.е., изменение содержимого колонтитула в одном разделе ведет к тому же в другом. Это по умолчанию. Но есть кнопка: «Как в предыдущем разделе», которая позволяет задать разное содержимое для колонтитулов разных разделов. Я пытался ее использовать раньше, но не понял как она работает. Ваш пример, Алёна, открыл мне глаза. Эту кнопка работает правильно тогда, когда колонтитул предыдущего раздела пустой. Иначе, она не активна или работает как-то непонятно. Итак, в вашем макросе, Алёна, цикл идет по всем элементам коллекции Sections через For Each, т.е. с начала и до конца. Но, мы не можем установить содержимое колонтитула следующего раздела отличным от колонтитула предыдущего, если он — колонтитул предыдущего раздела — не пустой. Поэтому нужно идти с конца в начало. Вот так: Код:
Лучше день потерять — потом за пять минут долететь!©
Последний раз редактировалось viter.alex; 30.03.2009 в 13:22. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
куда закачиваются файлы WorkBooks.ADD ? | salgir | Microsoft Office Excel | 8 | 08.10.2008 21:32 |
MS Word: Range | kate4ka | Общие вопросы Delphi | 1 | 19.02.2008 06:14 |
Chart1.Foot.Text.Add('gsdhfjk'); | Небесный | Общие вопросы Delphi | 7 | 17.02.2008 15:21 |
Query1.SQL.Add('.......'); <--- ПОМОГИТЕ !!! | SALEM | БД в Delphi | 3 | 24.11.2006 11:29 |