Статьи из блога
Статьи из блога
Word 2007: добавляем свою вкладку и свои команды
Метки: word 2007 | вкладки | интерфейс | команды
Воскресенье, 14 июня 2009 г.
Просмотров: 1431
Подписаться на комментарии по RSS
Версия для печати
Ирина задала вопрос о настройке новой версии редактора Word для своих нужд. В частности, она спрашивала:
Я работаю с офисом 2007 уже не первый год, но есть одно неудобство для меня. В предыдущих версиях можно было настраивать менюшки по усмотрению и необходимости. В этом выпуске я не смогла полностью настроить программу "под себя". Видела пару ссылок на публикации, но к сожалению не владею ни английским, ни языком программирования.
Если можно, помогите доступно объяснить.
Есть две новости: хорошая и ограничительная. Хотя, какие это новости? Описываемые ниже возможности были доступны с самого начала.
Итак, хорошая новость: ленту Office 2007 можно настроить по своему усмотрению и под свои нужды. Но тут же в игру вступает ограничительная новость: для того, чтобы настроить ленту под себя, нужны определенные знания языка программирования VBA и разметки XML. Либо, как вариант, нужна определенная сумма денег на покупку специальных программ:
Разумеется, обе программы на английском, хотя "Ribbon Customizer for Office 2007" при установке позволяет выбрать любой язык, например, белорусский. А вот русского в ней как не было, так и нет.
Для тех же пользователей, кто не хочет покупать вышеозвученные программы, либо не разбирается в программировании, я могу предложить только один варинт настройки ленты: воспользоваться пошаговым мастером, который позволит вам добавить новую вкладку со своими (часто используемыми) командами на ленту. Я покажу, как добавить на ленту вкладку с именем "Моя вкладка", содержащей следующие стандартные кнопки-команды:
- Создать новый документ
- Открыть документ
- Сохранить документ
- Сохранить как...
- Закрыть окно
Вот как это будет выглядеть в результате:

По образу и подобию вы можете впоследствии добавить свои команды на эту вкладку, либо же самостоятельно создать новую вкладку. Кое-что из нижеописываемого я уже приводил в своей ранней заметке . Поэтому обе эти статьи можно считать близнецами с небольшими различиями в содержании.
Итак, самым первым действием следует скачать программу для редактирования XML-содержимого ленты , хотя наверное можно будет воспользоваться и обычным текстовым редактором типа Notepad.
Далее описывается пошаговая инструкция с использованием редактора UI Editor. Мы будем изменять глобальный шаблон Normal.dotm, поэтому для начала сохраните этот шаблон в качестве резервной копии где-нибудь на жестком диске или на ином носителе, чтобы при желании вы могли просто восстановить ваш первоначальный шаблон. Это действие обязательно!
- Удостоверьтесь, что редактор Word у вас не запущен и ни один документ не открыт. Если это не так, то закройте все документы и обязательно закройте редактор Word.
- Запустите редактор XML-скриптов - Office 2007 Custom UI Editor и откройте в нем шаблон Normal.dotm. Как правило, путь к этому шаблону таков: C:\Documents and Settings\ИМЯ_ПОЛЬЗОВАТЕЛЯ\Application Data\Microsoft\Шаблоны\
Поскольку лента стандартная, то окно редактирования будет пустым.
- Вам нужно добавить свою вкладку на ленту, причем она должна отображаться самой первой и идти перед вкладкой "Главная". Для этого вставьте в окно редактора следующий код:
Этим кодом мы добавили на ленту нашу вкладку с именем "Моя вкладка", которая располагается перед стандартной вкладкой "Главная". Можете сохранить изменения в редакторе кода и запустить редактор Word для просмотра промежуточного результата. Вы должны увидеть следующую картину:

- Закроем редактор Word и продолжим добавление элементов уже на нашу новосозданную вкладку.
- Поскольку вкладка пустая, мы должны добавить на нее группу команд. Вставьте следующее выражение между тегами ‘tab’ и ‘/tab’ вашего кода (выделено):
Сохраните вновь изменения и снова откройте Word. Результат на скриншоте:

- Итак, мы создали вкладку и группу, в которую теперь должны разместить наши кнопки-команды. Закройте редактор Word и вернитесь в окно редактора кода XML.
- Первой добавленной кнопкой у нас будет команда "Создать новый документ". Для этого поместите между тегами ‘group’ и ‘/group’ следующий код (выделено):
- Можете, сохранив изменения, посмотреть на результаты:

Но я рекомендую вам прежде добавить все запланированные кнопки. Вот код для остальных кнопок:
- Итоговый код в редакторе кода будет выглядеть так:
Как видите, ничего сложного нет. Можно вообще скрыть всю стандартную ленту и работать с "чистым" редактором, хотя все стандартные команды будут доступны через "горячие" клавиши.
Вот ссылка на текстовый файл с описываемым здесь кодом XML. Можете скачать и вставить напрямую в редактор кода с вашим шаблоном:
Недавно, учитывая пожелание сценариста , я разработал шаблон "Сценарий", предназначенный для автоматизации написания киносценариев. Я полностью избавился от стандартной ленты и создал собственную ленту с тремя вкладками:
В шаблоне нет ничего лишнего, только самое необходимое. Шаблон можно скачать со страницы . В архиве шаблона находится и инструкция по установке и работе с инструментами шаблона.
Если у вас есть вопросы и пожелания по этой заметке, то прошу вас задавать их в комментариях. Постараюсь ответить в меру своих познаний.

Поиск
Рубрики
Подписка
Читают
Обсуждают
страницы
сайты
статистика
Комментариев: 14
Подскажите, пожалуйста, где можно найти идентификаторы для добавляемых кнопок?
Юрий, идентификаторы любой команды можно получить, если открыть диалог "Настройка панели быстрого доступа" и навести мышью на наименование команды. Появится подсказка, типа изображенной на скриншоте:
Либо можно скачать файл на сайте Майкрософт: Ссылка.
Или ждите версию Office 2010, где наконец-то вернули возможность простым образом редактировать ленты и кнопки на них…
Luna, эта информация верна? Откуда?
Вот информация: Microsoft Office 2010: первые впечатления
Что ж, первые впечатления неплохие. Посмотрим как оно будет вживую.
Возможно ли добавлять и скривать кнопки ... с уже существующих груп mso??7
Виталий, вы можете скрыть вкладку целиком или отдельные встроенные группы (целиком) с вкладки, но не встроенные кнопки в этих группах команд.
P.S. Да, и добавить свои кнопки в существующие группы (встроенные) команд нельзя. Но свою группу со своими (или заводскими) кнопками добавить можно.
Спасибо за ответ я так и думал.. Есть правда один вариант но долгий. Просто пересоздать групу и или удалить, или добавить кнопки. Я так решил эту проблему...
Подскажите, возможно ли добавить на созданную вкладку свой мобственный макрос. Если да, то где смотреть его идентификатор?
Имя макроса, который выполняется вашим элементом управления, записывается в свойстве onAction. Посмотрите эту заметку в моем блоге
Сделал в точности все как описывалось в статье. Редактирование глобального шаблона производил с помощью программы Office 2007 Custom UI Editor. Так же использовал ваш код XML для шаблона, чтобы не вводить вручную.
Но когда запустил Ворд. Ничего не изменилось, своей вкладки как не было. Даже на всякий случай проверил потом еще раз шаблон. Мои изменения в нем действительно сохранились, но ни к каким изменениям интерфейса это не привело, даже не повлияло на работоспособность Ворда, хотя я подразумевал обратное и на этот случай архивировал шаблон...
С чем это может быть связано?
Заранее спасибо.
Максим, а при открытии документа Ворд не выдает сообщения об ошибках? Если нет, то включите параметр "Показывать ошибки интерфейса пользователя надстроек", который располагается на вкладке "Дополнительно" диалогового окна "Параметры Word" (группа "Общие").
Если после этого появятся сообщения об ошибке, значит вы все-таки где-то допустили ошибку при вводе данных.
Точно!=) Стали всплывать ошибки:
"код ошибки oxcooee3b, имя в конечно теге элемента должно совпадать с типом элемента в начальном теге"
Видно где-то я переусердствовал...
Я первый раз пробую программировать и настраивать интерфейс Ворда. Раньше никогда этим не занимался.
Спасибо за совет=), буду разбираться.