Шрифт:
Если в качестве способа вызова макроса выбрана панель инструментов с кнопками, то после окончания работы над ней стоит повторить создание нового документа и вновь скопировать все компоненты программы в новый документ вместе с панелью. Такое преобразование позволит существенно сократить размер файла с программой, так как вследствие ошибки программистов Microsoft при редактировании в Microsoft Office макросов и панелей инструментов файл с программой сильно увеличивается в размерах — до полутора-двух раз. Впрочем, в OfficeXP данная рекомендация уже неактуальна.
Не стоит забывать и об информативном руководстве для пользователя, особенно если программа будет распространяться через Интернет. Лучше всего такое руководство оформить в отдельном текстовом файле или, если оно имеет большой объем, в виде набора связанных html-документов.
При помещении программы в Интернет весь набор ее файлов следует заархивировать в формате Zip (наилучший вариант) или Rar. При желании архив с программой можно сделать самораскрывающимся — тогда пользователям не будет нужна еще и программа-архиватор, чтобы воспользоваться вашей программой. Однако самораскрывающися архивы имеют расширение ехе и вследствие этого воспринимаются сетевой общественностью несколько настороженно.
Создание инсталлятора для программы — отдельная большая тема, выходящая за рамки данной книги. Для начала можно посоветовать обходиться вообще без него (просто указывая в документации к программе, что файл с ней, например, нужно скопировать в папку автозагружаемых файлов Word) или использовать уже готовые инсталляторы, — например, из разработок "Untaco", "ВерсткаТекстаКнижкой", про которые рассказывается в 9-й главе, модифицируя их под свои нужды.
НЕМНОГО О ПАНЕЛЯХ, ШАБЛОНАХ И МАКРОСАХ
Панель инструментов Microsoft Word 97/2000/ХР, то есть ее название, имена, рисунки, всплывающие подсказки кнопок, расположенных на ней, информация о связи этих кнопок с командами и макросами может храниться либо в шаблоне Microsoft Word 97/2000/ХР (с расширением. dot), либо в документе Word (с расширением. doc). При этом имеет место быть следующее:
1. Если панель инструментов сохранена в шаблоне Normal.dot, то она доступна всегда, когда открыт Word.
2. Если панель инструментов сохранена в шаблоне, который загружен как глобальный — то есть помещен в папку автозагружаемых файлов Word, то она также доступна всегда, когда открыт Word, но ее можно убрать, выгрузив шаблон с помощью диалогового окна "Сервис — Шаблоны и надстройки" (или удалив шаблон из папки автозагружаемых файлов). Местонахождение папки автозагружаемых файлов можно посмотреть в окне "Сервис — Параметры — Расположение" (рис. 7.6). Для Word97 это обычно папка..\Microsoft Office\Office\Startup, а для Word2000/XP по умолчанию назначается папка C: \Windows\Application Data\Microsoft\Word\Startup, однако эти пути всегда можно поменять на более удобные.
Рис. 7.6. В этом окне можно посмотреть расположение папки автозагружаемых файлов.
3. Если панель инструментов сохранена в шаблоне, на котором основаны документы, например, в одном из шаблонов, находящихся в папке шаблонов пользователя Word (посмотреть можно там же, для Word97 по умолчанию назначается папка..\Microsoft Office\Offiсе\Шаблоны, а для Word2000 — С: \Windows\Application Data\Microsof\Шаблоны) и ее подпапках, то она доступна тогда, когда этот шаблон присутствует на компьютере и активен документ, созданный на его основе. (Если документ просто открыт в Word, но неактивен, то панель инструментов все равно не видна.)
4. Если панель инструментов сохранена в каком-либо документе, то она доступна тогда, когда активен этот документ.
Панели инструментов можно копировать из одного шаблона или документа в другой с помощью диалогового окна "Организатор" (рис. 7.7).
Рис. 7.7. Диалоговое окно "Организатор". С его помощью можно копировать панели инструментов из одного шаблона в другой.
Информация о том, какие панели при предыдущем выходе из Word'а были видимы, а какие нет, как они располагались и где находились на экране (она требуется, чтобы восстановить эти их параметры при новой загрузке Word), сохраняется в системном реестре. Информация же о том, как должны располагаться панели при первой загрузке шаблона, находится в самом шаблоне и используется также при отсутствии нужной информации в реестре.
С макросами, которым назначены кнопки на панелях, дело обстоит так.
Каждой кнопке панели инструментов, вызывающей макрос, ставится в соответствие имя вызываемого ею макроса, которое состоит из имени модуля, содержащего этот макрос, и имени самого этого макроса в модуле. Узнать имена модуля и макроса в модуле можно в редакторе VBA (рис. 7.8).
Рис. 7.8. Выделено название макроса DocsMerger в модуле UniterDocs.
При изменении хотя бы одного компонента имени кнопка становится неработоспособной. Всплывающая подсказка на кнопке, возникающая по умолчанию, совпадает с именем макроса в модуле, причем в случае, если имя макроса было составлено из двух-трех слов, начинающихся с большой буквы, например, "UniterDocs", то в подсказке эти слова разделяются пробелом (рис. 7.9).