Remkomplekty.ru

IT Новости из мира ПК
16 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Excel vba колонтитулы

VB*: Формирование колонтитулов в книге Excel(номера страниц).

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщения 5

1 Тема от BeS Yara 2011-06-24 11:27:53

  • BeS Yara
  • Разработчик
  • Неактивен
  • Рейтинг : [ 1 | 0 ]

    Тема: VB*: Формирование колонтитулов в книге Excel(номера страниц).

    Столкнулся с маленькой проблемой при генерации рабочей книги из VB.NET — колонтитулы(«Страница &P из &N») прописанные как в сгенерированнм макросе не отрабатывались(выводилось «Страница из «). Оказалось проблема известна и связана с особенностями локализации различных версий офиса.
    Печать офисных документов:Колонтитулы.
    Суть решения в том чтобы прописать варианты и для русского кода и для английского:

    Неправильные с точки зрения конкретной версии офиса коды игнорируются и на выходе получаем «Страница 1 из 351».

    P.S. В целом весьма любопытная статья по генерации html-документа для открытия в офисе — может кому-нибудь окажется полезна.
    P.P.S. Отдельная анонимная благодарность пользователям SQL.RU, в чьём обсуждении я наткнулся на эту замечательную ссылку

    2 Ответ от JSman 2011-06-28 23:10:11

    • JSman
    • Администратор
    • Неактивен
    • Рейтинг : [ 33 | 0 ]

      Re: VB*: Формирование колонтитулов в книге Excel(номера страниц).

      BeS Yara, если не затруднит, напишите суть проблемы с примером кода, а также решение с комментарием. И тогда можно будет пополнить замечательную Коллекцию 🙂

      3 Ответ от BeS Yara 2011-06-29 12:09:42 (изменено: BeS Yara, 2011-06-29 12:28:16)

      • BeS Yara
      • Разработчик
      • Неактивен
      • Рейтинг : [ 1 | 0 ]

        Re: VB*: Формирование колонтитулов в книге Excel(номера страниц).

        Суть проблемы в том, что русский офис(2003) несмотря на то что генерирует в макрос коды для страницы и кол-ва страниц в колонтитула на английском, при добавлении этих кодов из VB.NET(судя по найденным тамам проблема общая и для других языков, на SQL.RU вообще делфи обсуждали ) колонтитулы не отображаются верно. А ведь запись макроса с последующей адоптацией в скрипт для многих основной метод получения знаний(по крайней мере для меня он первый, а уже потом хэлп, MSDN, яндекс).
        Например записываем макрос с добавлением «Страница X из Y». После удаления всего лишнего остаётся:

        Что примечательно, в конструкторе колонтитула это выглядит иначе: «Страница &[Страница] из &[Страниц]»
        В VB.NET кусок выглядит аналогично(я использовал для работы с экселем сборку Microsoft.Office.Interop.Excel). Из офиса макрос работает нормально, а вот при создании книги из VB.NET вместо «Страница 1 из 371» получается «Страница из » хотя если зайти в создание колонтитула видим законные(согласно записанному макросу) «Страница &P из &N»

        Как выяснилось при прочтении статьи, локализованный офис не всегда принимает нелокализованные коды(формула в ячейке, кстати, тоже чувствительна к локализации — если попробовать в русском офисе использовать английскую функцию для суммы, например, можно в этом убедиться).
        Так как приложение возможно будет запускаться не только с 2003-м и не только с руссифицированным, то вариант подставлять локализованные коды не подходит. Так вот в статье и предлагается указывать и английские коды и локализованные. В этом случае эксель игнорирует(и не отображает) те что не знает и отрабатывает знакомые:
        Приводить всю процедуры смысла нет — проблема с конкретным свойством.

        и — буквы русские!

        В конструкторе теперь получается «Страница &[Страница]&P из &[Страниц]&N»
        На выходе при печати — «Страница 1 из 371»

        P.S. Не знаю насколько тянет на коллекцию, хотя несколько ценных часов на поиск этого решения я потратил, так что лишним не будет(как часть Вашей темы «WSH: преобразуем макрос VBA в скрипт VBScript» ).

        4 Ответ от JSman 2011-06-29 16:26:05

        • JSman
        • Администратор
        • Неактивен
        • Рейтинг : [ 33 | 0 ]

          Re: VB*: Формирование колонтитулов в книге Excel(номера страниц).

          Отлично, спасибо. Перемещаю тему в раздел по VBA.

          Изменить колонтитулы

          Данная функция является частью надстройки MulTEx

          • Описание, установка, удаление и обновление
          • Полный список команд и функций MulTEx
          • Часто задаваемые вопросы по MulTEx
          • Скачать MulTEx

          Вызов команды:
          MulTEx -группа Книги/ЛистыЛистыИзменить колонтитулы

          Изменяет и создает колонтитулы сразу на нескольких листах книги: всех или только выбранных, а так же поможет скопировать в указанные листы колонтитулы с выбранного листа.
          Все, что требуется это выбрать листы, на которых необходимо изменить колонтитулы и указать какие именно колонитулы изменить.

          Копировать колонтитулы с листа:
          Выбирается лист текущей книги, с которого будут скопированы все колонтитулы в выбранные листы.

          Примечание: из-за некоторых особенностей хранения картинок в колонитулах, они не всегда могут быть корректно перенесены. Поэтому всегда проверяйте скопировались ли картинки с указанного листа или нет. Для других типов данных этой проблемы нет.

          Задать произвольно:
          Это небольшой конструктор колонтитулов. Для каждого колонтитула можно создать любые комбинации, включая произвольный текст. Лучше всего использовать вставку предустановленных данных:

          • Рисунок — вставляет в колонтитул рисунок. При этом мини-изображение рисунка отображается справа от списка данных. Если в последствии нажать на мини-изображение, то можно изменить рисунок. Важно: нельзя устанавливать два рисунка для одного колонтитула.
          • Номер страницы — вставляется номер страницы. Номер страниц определяются перед печатью.
          • Всего страниц — вставляется количество печатных страниц.
          • Дата — вставляется текущая дата.
          • Время — вставляется текущее время.
          • Имя листа — вставляется имя листа, который отправлен на печать.
          • Путь к файлу — вставляется полный путь к файлу, отправленному на печать.
          • Имя файла — вставляется только имя файла, отправленного на печать.
          • Ячейка — вставляет в колонтитул данные указанной ячейки. После выбора этого пункта на форме отобразится поле для указания ячейки:

            необходимо указать ячейку, значение которой необходимо вставить в колонтитул.
          • Автор — вставляется имя автора файла. Его можно посмотреть, нажав на файле правой кнопкой мыши-Свойства-Подробно-Авторы.

          Созданы и вставлены в свойства листа будут только колонтитулы, отмеченные галочками. Для редактирования колонтитула необходимо сначала установить напротив него галочку.

          Колонтитулы на листах

          В верхнюю или нижнюю часть выводимого на печать листа в Excel можно добавить колонтитулы. Например, можно создать нижний колонтитул с номерами страниц, датой и именем файла. Можно создать собственные колонтитулы или использовать множество встроенных колонтитулов.

          Верхние и нижние колонтитулы отображаются только в представлении Разметка страницы, при предварительном просмотре и на напечатанных страницах. Если нужно вставить колонтитулы сразу на несколько листов, можно воспользоваться диалоговым окном Параметры страницы. При работе с листами других типов, такими как листы диаграмм, вставить колонтитулы на страницы можно только с помощью диалогового окна Параметры страницы.

          Добавление и изменение колонтитулов в представлении «Разметка страницы»

          Щелкните лист, на котором нужно добавить или изменить колонтитулы.

          На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

          Excel отобразит лист в представлении Разметка страницы.

          Чтобы добавить или изменить верхний или нижний колонтитул, щелкните левое, центральное или правое текстовое поле колонтитула в верхней или нижней части страницы листа (под надписью Верхний колонтитул или над надписью Нижний колонтитул).

          Ввод нового текста колонтитула.

          Чтобы начать новую строку текста в верхнем или нижнем колонтитуле, нажмите клавишу ВВОД.

          Для вставки одиночного амперсанда (&) внутри текста колонтитула введите два амперсанда. Например, чтобы включить в верхний колонтитул текст «Субподрядчики & Услуги», введите значение Субподрядчики && Услуги.

          Чтобы завершить работу с колонтитулами, щелкните в любом месте листа. Чтобы закрыть колонтитулы без сохранения изменений, нажмите клавишу ESC.

          Щелкните лист или листы, лист диаграммы или диаграмму, для которых нужно добавить или изменить колонтитулы.

          Совет: Чтобы выделить несколько листов, щелкните их, удерживая нажатой клавишу CTRL. Если выделено несколько листов, в заголовке в верхней части листа отображается надпись [Группа]. Чтобы отменить выделение нескольких листов книги, щелкните любой невыделенный лист. Если таких листов нет, щелкните правой кнопкой мыши ярлычок листа и выберите команду Разгруппировать листы.

          На вкладке Разметка страницы в группе Параметры страницы нажмите кнопку вызова диалогового окна .

          На экран будет выведено диалоговое окно Параметры страницы.

          На вкладке Колонтитулы нажмите кнопку Создать верхний колонтитул или Создать нижний колонтитул.

          Щелкните поле Слева, В центре или Справа и нажмите соответствующие кнопки, чтобы добавить сведения в верхний или нижний колонтитул в данном поле.

          «Верхний колонтитул»» />

          Чтобы добавить или изменить текст верхнего или нижнего колонтитула, внесите изменения в поле Слева, В центре или Справа.

          Чтобы начать новую строку текста в верхнем или нижнем колонтитуле, нажмите клавишу ВВОД.

          Для вставки одиночного амперсанда (&) внутри текста колонтитула введите два амперсанда. Например, чтобы включить в верхний колонтитул текст «Субподрядчики & Услуги», введите значение Субподрядчики && Услуги.

          В Excel есть множество встроенных верхних и нижних колонтитулов. С колонтитулами листов можно работать в представлении Разметка страницы. В случае диаграмм и листов диаграмм для работы с колонтитулами используйте диалоговое окно Параметры страницы.

          Щелкните лист, на котором нужно добавить или изменить встроенный колонтитул.

          На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

          Excel отобразит лист в представлении Разметка страницы.

          Выберите левое, центральное или правое текстовое поле колонтитула в верхней или нижней части листа.

          Совет: Щелкнув любое поле, можно выбрать верхний или нижний колонтитул и отобразить группу Колонтитулы на вкладке Конструктор.

          На вкладке Конструктор в группе Колонтитулы нажмите Верхний колонтитул или Нижний колонтитул и выберите подходящий встроенный колонтитул.

          Вместо того чтобы выбирать встроенный колонтитул, можно выбрать встроенный элемент. Многие из них, например Номер страницы, Имя файла и Текущая дата, можно найти на ленте. С колонтитулами листов можно работать в представлении Разметка страницы. В случае диаграмм и листов диаграмм для работы с колонтитулами используйте диалоговое окно Параметры страницы.

          Выберите лист, в колонтитулы которого требуется добавить элементы.

          На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

          Excel отобразит лист в представлении Разметка страницы.

          Выберите левое, центральное или правое текстовое поле колонтитула в верхней или нижней части листа.

          Совет: Щелкнув любое поле, можно выбрать верхний или нижний колонтитул и отобразить группу Колонтитулы на вкладке Конструктор.

          На вкладке Конструктор в группе Элементы колонтитулов выберите нужный элемент.

          «Конструктор»» />

          Щелкните лист диаграммы или диаграмму, для которых нужно добавить или изменить элемент колонтитула.

          На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

          На экран будет выведено диалоговое окно Параметры страницы.

          Нажмите кнопку Настраиваемый верхний колонтитул или Настраиваемый нижний колонтитул.

          «Верхний колонтитул»» />

          Используя кнопки диалогового окна Верхний колонтитул или Нижний колонтитул, вставьте определенные элементы в верхний или нижний колонтитул.

          Совет: При наведении указателя мыши на кнопку подсказка выведет имя элемента, вставляемого нажатием этой кнопки.

          С колонтитулами листов можно работать в представлении Разметка страницы. В случае диаграмм и листов диаграмм для работы с колонтитулами используйте диалоговое окно Параметры страницы.

          Выберите лист, для которого требуется настроить параметры колонтитулов.

          На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

          Excel отобразит лист в представлении Разметка страницы.

          Выберите левое, центральное или правое текстовое поле колонтитула в верхней или нижней части листа.

          Совет: Щелкнув любое поле, можно выбрать верхний или нижний колонтитул и отобразить группу Колонтитулы на вкладке Конструктор.

          На вкладке Конструктор в группе Параметры установите один указанных ниже флажков.

            Чтобы удалить колонтитулы с первой печатаемой страницы, установите флажок Особый колонтитул для первой страницы.

            Чтобы указать, что колонтитулы нечетных страниц должны отличаться от колонтитулов четных страниц, установите флажок Разные колонтитулы для четных и нечетных страниц.

            Чтобы указать, что в колонтитулах должен использоваться такой же размер шрифта и масштаб, что и на листе, установите флажок Изменять масштаб вместе с документом.

            Чтобы размер шрифта и масштаб колонтитулов не зависели от масштабирования листа при выводе нескольких страниц (это позволяет добиться единообразного вида выводимых данных), снимите этот флажок.

            Чтобы выровнять поля колонтитулов относительно левого и правого полей листа, установите флажок Выровнять относительно полей страницы.

            Чтобы задать определенные значения левого и правого полей колонтитулов, не зависящие от левого и правого полей листа, снимите этот флажок.

            Щелкните диаграмму или лист диаграммы, для которых требуется настроить параметры колонтитулов.

            На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

            На экран будет выведено диалоговое окно Параметры страницы.

            Выполните одно или несколько из указанных ниже действий.

              Чтобы удалить колонтитулы с первой печатаемой страницы, установите флажок Особый колонтитул для первой страницы.

              Чтобы указать, что колонтитулы нечетных страниц должны отличаться от колонтитулов четных страниц, установите флажок Разные колонтитулы для четных и нечетных страниц.

              Чтобы указать, что в колонтитулах должен использоваться такой же размер шрифта и масштаб, что и на листе, установите флажок Изменять масштаб вместе с документом.

              Чтобы размер шрифта и масштаб колонтитулов не зависели от масштабирования листа при выводе нескольких страниц (это позволяет добиться единообразного вида выводимых данных), снимите флажок Изменять масштаб вместе с документом.

              Чтобы выровнять поля колонтитулов относительно левого и правого полей листа, установите флажок Выровнять относительно полей страницы.

              Совет: Чтобы задать определенные значения левого и правого полей колонтитулов, не зависящие от левого и правого полей листа, снимите этот флажок.

              Чтобы закрыть верхний или нижний колонтитул, переключитесь из страничного режима просмотра в обычный.

              На вкладке Вид в группе Режимы просмотра книги нажмите кнопку Обычный.

              Также можно щелкнуть Обычный в строке состояния.

              На вкладке Вставка в группе Текст нажмите кнопку Колонтитулы.

              Excel отобразит лист в представлении Разметка страницы.

              Выберите левое, центральное или правое текстовое поле колонтитула в верхней или нижней части листа.

              Совет: Щелкнув любое поле, можно выбрать верхний или нижний колонтитул и отобразить группу Колонтитулы на вкладке Конструктор.

              Нажмите клавишу DELETE или BACKSPACE.

              Примечание: Чтобы удалить колонтитулы сразу с нескольких листов, выберите эти листы, а затем откройте диалоговое окно Параметры страницы. Чтобы удалить сразу все колонтитулы, на вкладке Колонтитулы в поле Верхний колонтитул или Нижний колонтитул выберите (нет).

              Дополнительные сведения

              Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

              Коллекция Word HeadersFooters и объекты HeaderFooter — работа с колонтитулами

              Всем привет, с вами автор блога scriptcoding.ru. В данной статье мы рассмотрим коллекцию HeadersFooters и ее объекты HeaderFooter, которые отвечают за редактирование или создание колонтитулов в Word документе.

              Важной особенностью при работе с коллекцией HeadersFooters является то, что она содержит в себе не количество классов HeadersFooter для каждой страниц (то есть, если у нас 30 статей в разделе, то это не означает, что у нас 30 колонтитулов в ворде), а количество возможных параметров при работе с колонтитулами в Word, поясню….

              В самом документе мы можем вставить верхний колонтитул в ворде или нижний колонтитул в ворде, которые будет отображаться на всех страницах, это понятно. Далее, мы можем указать, что бы для четных и нечетных отображались разные колонтитулы. И, мы можем указать индивидуальный колонтитул для первой страницы Word.

              Для доступа к коллекции HeadersFooters используются свойства Headers или Footers, которые указывают: с верхним или с нижним колонтитулом в ворде мы хотим работать . Данные свойства есть у объекта Section, который позволяет обрабатывать нужный раздел. Напомню, что в документ можно вставить несколько разделов, которые будут содержать статьи, обрабатываемые в индивидуальном порядке.

              • Если мы хотим указать, что нужно создавать разные колонтитулы в Word для четных и нечетных, то свойству OddAndEvenPagesHeaderFooter объекта PageSetup нужно присвоить значение true.
              • Если надо создать колонтитул в ворде, который будет уникальным для первой статьи, то свойству DifferentFirstPageHeaderFooter объекта PageSetup присваивается значение true.

              Сам процесс создания верхних и нижних колонтитулов в документе Word я рассмотрю в конце статьи, а пока, рассмотрим методы и свойства коллекции HeadersFooters и класса HeaderFooter.

              Коллекция HeadersFooters — колонтитулы в ворде

              Свойства – верхний колонтитул в ворде

              Application — Возвращает объект Application, представляющий приложение Microsoft Word.

              Count – Возвращает количество объектов HeaderFooter, данное значение фиксировано и равно 3, так как можно задать три параметры при добавлении колонтитулов в ворд.

              Методы – нижний колонтитул в ворде

              Item (index) – Позволяет получить доступ к объекту HeaderFooter по его номеру в коллекции.

              Index – Данный параметр содержит значения константы WdHeaderFooterIndex:

              • wdHeaderFooterEvenPages — 3 — Все к-тулы, даже на пронумерованных статьях.
              • wdHeaderFooterFirstPage — 2 — Первый к-тул в документе или разделе.

              Тут стоит дать некоторое пояснение…. Если вы хотите добавить колонтитулы в Word на все страницы, то для параметра index указывайте значение 3. Если вы хотите создать колонтитулы в ворд индивидуально для четных и нечетных, то указывайте значение 1 для нечетных и 3 для четных, предварительно, нужно использовать свойство OddAndEvenPagesHeaderFooter объекта PageSetup . Если вы хотите указать Word колонтитул только для первой страницы раздела, то используйте значение 2, прописав перед этим свойство DifferentFirstPageHeaderFooter объекта PageSetup .

              Класс HeaderFooter – колонтитулы в Word

              Объект HeaderFooter содержит в своем арсенале только свойства.

              Свойства – работа с колонтитулами в Word

              Application — Возвращает объект Application, представляющий приложение Microsoft Word.

              Exists – Значение true, если указанный объект HeaderFooter существует. Чтение и запись.

              Index – Свойство возвращает значение константы WdHeaderFooterIndex (смотрите выше), которая представляет указанный Word колонтитул в документе или разделе. Только чтение.

              IsHeader – Значение true, если указанный HeaderFooter является верхним колонтитулом в ворде и значение false – если нижним колонтитулом в ворде. Только чтение.

              LinkToPrevious — Значение true, если указанный колонтитул в Word связан с соответствующим к-тулом в предыдущем разделе. Чтение и запись.

              PageNumbers — Возвращает коллекцию PageNumbers, которая представляет все номера страницы, входящие в указанный верхний или нижний колонтитул в ворд.

              Range — Возвращает объект Range, представляющий часть документа, которая содержится в указанных колонтитулах Word.

              Shapes — Возвращает коллекцию Shapes, представляющую все объекты Shape в нижнем или верхнем колонтитуле в ворд.

              Хорошо, теперь, как я и обещал, мы рассмотрим два сценария на языке VBScript и JScript сервера сценариев Windows Script Host, а после, я дам пояснения того, как они работают.

              Форум для экологов

              Форум для экологов

              Об оформлении колонтитулов в Excel


              Об оформлении колонтитулов в Excel

              Сообщение masm0 » 17 окт 2017, 20:02

              Данную заметку я решил опубликовать в сокращенном варианте. Честно говоря, я не ожидал, что она получится настолько громоздкой. Сорри:(

              Введение

              У многих организаций имеется свой фирменный стиль при оформлении продукции, например, красивые колонтитулы в Word или AutoCad. Да, эти редакторы позволяют создавать сколь угодно сложные колонтитулы, состоящие из разных элементов, но как лучше поступить, если требуется распечатать таблицу из Excel. ведь в этом табличном процессоре очень скудный набор инструментов для оформления колонтитулов.

              Всё просто. Для этого нужно:
              1. создать колонтитулы в виде векторной графики (изображений, рисунков);
              2. вставить их в колонтитулы Excel;
              3. при необходимости дополнить колонтитулы специальными кодами для их автозаполнения.

              Немного о применении векторной графики

              Строго говоря, рисунок не обязательно должен быть векторным. Можно вставить растровый (точечный) рисунок: битовую карту (BMP) или точечные рисунки, сжатые по особому алгоритму, например, форматы GIF, JPEG, EXIF или TIFF. Но при печати качество изображения заметно ухудшится. В первом случае мы увидим пиксели в виде «квадратиков», а во втором «грязь» около изображения, при этом само изображение будет выглядеть размытым. Если мы хотим получить безупречное изображение, то лучше использовать векторный рисунок.

              Качество при печати векторного и растрового изображений можно оценить на следующей иллюстрации (для этого кликните по ней).

              При создании векторного рисунка колонтитула можно применять различные графические редакторы и использовать разные форматы — это лишь дело вкуса. В качестве векторного рисунка я использую метафайлы Windows (WMF) или их расширенную версию (EMF). Для работы с ними я применяю редактор Microsoft Visio. В последнем можно построить колонтитул с нуля или экспортировать из Word или AutoCad. В данной заметке я опишу только способ экспорта из Word.

              Создание векторного рисунка колонтитула из файла Word с помощью Visio

              Допустим, в качестве исходного файла у нас имеется файл «1.docx» (см. под спойлером в преамбуле).

              В редакторе Word откройте наш пример и произведите следующие действия:

              1. Двойным щелчком мыши по нужному колонтитулу (в данном случае нижнему) включите режим Работа с колонтитулами.

              2. Выделите весь колонтитул. Для этого рекомендуется нажать на клавиатуре клавиши Ctrl+A.

              3. Скопируйте в буфер обмена (Ctrl+C).

              4. Закройте режим Работа с колонтитулами. Для этого нажмите на клавиатуре клавишу Esc или на вкладке Работа с колонтитулами->Конструктор в группе Закрыть нажмите кнопку Закрыть окно колонтитулов.

              5. Вставьте колонтитул в текстовую часть документа (Ctrl+V).

              6. Удалите поле Номер страницы.

              7. Сохраните документ под новым именем (F12). В данном примере я назвал файл «2.docx».

              В редакторе Visio:

              1. Создайте новый файл в том же формате листа, каким он был в Word (в данном примере был использован вертикальный лист A4). Для этого на вкладке Файл в левой части экрана нажмите кнопку Создать. Среди прочих шаблонов выберите Общие. Справа нажмите Создать. По умолчанию приложение создаст вертикальный лист A4 с разметкой.

              2. На вкладке Вставка нажмите на кнопку Объект. Затем нажмите на опциональную кнопку Создать из файла, а затем кнопку Обзор. Найдите наш файл «2.docx» и откройте его. Наш колонтитул отобразится на листе.

              3. После вставки автоматически откроется вкладка Работа с рисунками->Формат. В группе Упорядочить нажмите на кнопку Обрезка и удалите лишние пустые пространства справа, слева, сверху и снизу.

              4. Если остался номер страницы, то его можно удалить и на этом этапе. Для этого двойным щелчком по рисунку зайдите в Word и удалите поле с номером страницы (в данном примере среднее поле).

              5. Теперь сохраните исходный файл в формате редактора Visio (VSD). Этот файл нам понадобится для дальнейшего редактирования рисунка колонтитула. Назовем этот файл «3.vsd».

              6. Сохраните рисунок в общедоступном векторном формате. Нажмите F12 (или Файл->Сохранить как…). В комбобоксе Тип файла выберите формат EMF. Назовем файл «4.emf». Теперь у нас есть файл с векторным изображением колонтитула.

              Вставка изображения в колонтитулы Excel

              1. Создайте новый файл или откройте имеющийся. В нашем примере в файле «1.docx» были установлены поля: верхнее и нижнее — 1 см, нижнее и верхнее — 2 см (в редакторе Word эти параметры можно посмотреть на вкладке Разметка страницы в группе Параметры страницы. Нажмите на нижнюю правую кнопку, открывающую окно Параметры страницы).

              Теперь настройте такие же параметры на листе в Excel. Зайдите на вкладку Разметка страницы, в группе Параметры страницы нажмите на кнопку Настаиваемые поля и там наберите нужные значения.

              2. В том же окне перейдите на вкладку Колонтитулы. Снимите флаг Изменять масштаб вместе с документом.

              3. На вкладке Вид в группе Режим просмотра книги выберете Разметка страницы (или на вкладке Вставка в группе Текст нажмите кнопку Колонтитулы). Отобразится представление листа Разметка страницы, а справа появится вкладка Работа с колонтитулами->Конструктор. Лист в представлении Разметка страницы имеет 6 полей для создания колонтитулов: три поля для верхнего колонтитула и три — для нижнего.

              4.
              Чтобы создать так называемый сложный колонтитул придется применить нашу инженерную смекалку. В данном примере можно поместить рисунок в левом нижнем поле. Для этого щелкаем по этому полю, затем выбираем вкладку Работа с колонтитулами->Конструктор, в группе Элементы колонтитулов нажимаем на кнопку Рисунок, в диалоговом окне выбираем заранее подготовленный рисунок колонтитула и нажимаем Открыть.

              5. В представлении листа Разметка страницы все выглядит идеально. Но нас ждет разочарование. Если перейти в режим предварительного просмотра (Ctrl+P или Файл->Печать) или распечатать лист на принтере, то мы увидим, что изображение масштабируется неправильно. При этом, масштаб изображения будет зависеть от выбранного принтера.

              Проблема в том, что в отличие, например, от редактора Word, редактор Excel при печати оперирует не единицами длины (сантиметрами или дюймами), а знаками (символами), точками (пунктами) и пикселями. При этом эти единицы измерения воспринимаются разными принтерами по-разному. Честно говоря, я еще не придумал, как автоматически избавиться от этого бага, но могу предложить два варианта решения проблемы.

              При печати на разных принтерах (физических или виртуальных) следует предварительно настроить масштаб рисунка вручную. Для этого в представлении листа Разметка страницы выделяем поле, в которое вставлен рисунок. На вкладке Работа с колонтитулами->Конструктор, нажимаем кнопку Формат рисунка. Откроется одноимённое окно, в котором будет открыта вкладка Размер. В листбоксе Масштаб->по ширине подбираем приемлемый масштаб в несколько итераций. В данном примере для виртуального принтера «doPDF v7» мне подошел масштаб 95%.

              Но на этом наши беды не заканчиваются. При печати изменяются пропорции рисунка. Согласно моему опыту, высота рисунка относительно ширины укорачивается на 8—10 %. Следующие цифры я получил экспериментальным путем. Так, например, для разных виртуальных принтеров пропорции будут приблизительно такими:

              Читать еще:  Excel vba goto
      Ссылка на основную публикацию
      Adblock
      detector