Как создать надстройку для word
Перед прочтением этой статьи ознакомьтесь с обзором платформы надстроек Office.
Все надстройки Office построены на базе платформы надстроек Office. Для каждой создаваемой надстройки следует понять важные принципы, такие как доступность клиентского приложения и платформы, шаблоны программирования API JavaScript для Office, настройку параметров и возможностей надстройки в файле манифеста, способ разработки пользовательского интерфейса и т. д. Эти основные принципы разработки рассматриваются ниже в разделе документации Жизненный цикл разработки > Разработка. Ознакомьтесь с этими сведениями перед изучением документации для клиентского приложения, надстройку для которого вы создаете (например, Excel).
Создание надстройки Office
Надстройку Office можно создать с помощью генератора Yeoman для надстроек Office или Visual Studio.
Генератор Yeoman для надстроек Office
Генератор Yeoman для надстроек Office можно использовать для создания проекта надстройки Office Node.js, которым можно управлять с помощью Visual Studio Code или любого другого редактора. В генераторе можно создавать надстройки Office для любой из следующих целей.
- Excel
- OneNote
- Outlook
- PowerPoint
- Project
- Word
- Пользовательские функции Excel
Проект можно создать с помощью HTML, CSS и JavaScript или с помощью Angular или React. Для любой платформы можно также выбирать между JavaScript и Typescript. Дополнительные сведения о создании надстроек с помощью генератора Yeoman см. в статье Разработка надстроек Office с помощью Visual Studio Code.
Visual Studio
С помощью Visual Studio можно создавать надстройки Office для Excel, Outlook, Word и PowerPoint. Проект надстройки Office создается в рамках решения Visual Studio и использует HTML, CSS и JavaScript. Дополнительные сведения о создании надстроек с помощью Visual Studio см. в статье Разработка надстроек Office с помощью Visual Studio.
Надстройки Office можно создавать с помощью Visual Studio, но удобство разработки значительно повышается при использовании генератора Yeoman.
Генератор Yeoman поддерживает для проектов надстроек Office больше типов проектов, платформ и языков по сравнению с Visual Studio.
Шаблоны проектов в Yeoman обновляются чаще, чем шаблоны проектов в Visual Studio.
Общие сведения о двух частях надстройки Office
Надстройка Office состоит из двух частей.
Манифест надстройки (XML-файл), определяющий параметры и возможности надстройки.
Веб-приложение, определяющее пользовательский интерфейс и функции компонентов надстройки, таких как области задач, контентные надстройки и диалоговые окна.
Веб-приложение использует API JavaScript для Office с целью взаимодействия с содержимым в документе Office, в котором запущена надстройка. Надстройка может выполнять другие типовые действия веб-приложений, например вызовы внешних веб-служб, упрощение проверки подлинности пользователей и т. д.
Определение параметров и возможностей надстройки
Манифест надстройки Office (XML-файл), определяющий параметры и возможности надстройки. Вы можете настроить манифест, чтобы указать следующие элементы:
Дополнительные сведения о манифесте см. в статье XML-манифест надстроек Office.
Взаимодействие с содержимым в документе Office
Надстройка Office может использовать API JavaScript для Office, чтобы взаимодействовать с содержимым документа Office, в котором запущена надстройка.
Доступ к библиотеке API JavaScript для Office
Дополнительные сведения о доступе к библиотеке API JavaScript для Office, в том числе о способе получения функции IntelliSense, см. в статье Добавление ссылок на библиотеку API JavaScript для Office из сети доставки содержимого (CDN).
Модели API
API JavaScript для Office включает две модели:
API-интерфейсы для определенных приложений предоставляют объекты со строгой типизацией, которые можно использовать для взаимодействия с собственными объектами определенных приложений Office. Например, вы можете использовать API JavaScript для Excel с целью доступа к листам, диапазонам, таблицам, диаграммам и т. д. API для определенных приложений в настоящее время доступны для следующих приложений Office.
Эта модель API использует обещания и позволяет указывать несколько операций в каждом запросе, отправляемом в приложение Office. Подобные пакетные операции могут значительно повысить производительность надстроек для веб-приложений Office. API для определенных приложений появились в Office 2016, и их нельзя использовать для работы с Office 2013.
Существует также специальный API для приложения Visio, но его можно использовать только на страницах SharePoint Online для интерактивной работы с встроенными в них диаграммами Visio. Веб-надстройки Office не поддерживаются в Visio.
Дополнительные сведения об этой модели API см. в статье Использование модели API для конкретного приложения.
Общие API-интерфейсы можно использовать для доступа к таким компонентам, как пользовательский интерфейс, диалоговые окна и параметры клиентов, общие для нескольких типов приложений Office. Эта модель API использует обратные вызовы, позволяющие указывать только одну операцию в каждом запросе, отправляемом в приложение Office. Общие API появились в Office 2013, и их можно использовать для работы с Office 2013 и более поздними версиями. Подробнее об объектной модели общих API, включающей API для взаимодействия с Outlook, PowerPoint и Project, см. в статье Объектная модель общих API JavaScript.
Некоторые пользовательские функции Excel работают в уникальной среде выполнения, в которой приоритет присвоен вычислениям и отсутствует область задач. Эти функции используют немного другую модель программирования и называются функциями без пользовательского интерфейса.
Наборы обязательных элементов API
Наборы обязательных элементов — это именованные группы элементов API. Наборы обязательных элементов могут относиться к конкретному приложению Office, например набор обязательных элементов ExcelApi 1.7 (набор API, который можно использовать только в Excel), или быть общими для нескольких приложений, например набор обязательных элементов DialogApi 1.1 (набор API, который можно использовать в любом приложении Office, поддерживающем API диалоговых окон).
Используя наборы обязательных элементов, надстройка может определять, поддерживает ли приложение Office необходимые элементы API. Дополнительные сведения об этом см. в статье Указание приложений Office и обязательных элементов API.
Поддержка набора обязательных элементов зависит от приложения Office, версии и платформы. Подробные сведения о платформах, наборах обязательных элементов и общих API, поддерживаемых каждым приложением Office, см. в статье Доступность клиентских приложений и платформ для надстроек Office.
Изучение API с помощью Script Lab
Script Lab — это надстройка, позволяющая изучать API JavaScript для Office и выполнять фрагменты кода при работе в программах Office, таких как Excel или Word. Она доступна бесплатно в AppSource и является полезным инструментом для добавления в набор средств разработки при создании прототипов и проверке нужных функций в надстройке. В Script Lab можно получить доступ к библиотеке встроенных примеров, чтобы быстро испытать API или использовать пример в качестве отправной точки для собственного кода.
В следующем 1-минутном видео показана надстройка Script Lab в действии.
Настройка интерфейса пользователя Office
Надстройка Office может расширить пользовательский интерфейс Office с помощью команд надстройки и контейнеров HTML, таких как области задач, контентные надстройки и диалоговые окна.
Команды надстроек можно использовать для добавления настраиваемых вкладок, кнопок и меню на стандартную ленту в Office или для расширения стандартного контекстного меню, отображающегося при щелчке правой кнопкой мыши по тексту в документе Office или объекту в Excel. Когда пользователи выбирают команду надстройки, они запускают задачу, определяемую этой командой надстройки, например выполнение кода JavaScript, открытие области задач или запуск диалогового окна.
Контейнеры HTML, такие как области задач, контентные надстройки и диалоговые окна можно использовать для отображения настраиваемого пользовательского интерфейса и предоставления дополнительных функций в приложении Office. Содержимое и функции каждой области задач, контентной надстройки или диалогового окна зависят от указанной вами веб-страницы. Эти веб-страницы могут использовать API JavaScript для Office с целью взаимодействия с содержимым в документе Office, в котором запущена надстройка, а также могут выполнять другие типовые действия веб-страниц, например вызовы внешних веб-служб, упрощение проверки подлинности пользователей и т. д.
На следующем изображении показана команда надстройки на ленте, область задач справа от документа, диалоговое окно или контентная надстройка поверх документа.
Дополнительные сведения о расширении пользовательского интерфейса Office и разработке интерфейса надстройки см. в статье Элементы пользовательского интерфейса Office для надстроек Office.
Дальнейшие действия
В этой статье рассмотрены различные способы создания надстроек Office, представлены варианты, которыми надстройка может расширить пользовательский интерфейс Office, описаны наборы API и представлен инструмент Script Lab, полезный при изучении API JavaScript для Office и создании прототипов функций надстроек. После изучения этих ознакомительных сведений рекомендуется продолжить исследование надстроек Office по следующим путям.
Создание надстройки Office
Вы можете быстро создать простую надстройку для Excel, OneNote, Outlook, PowerPoint, Project или Word с помощью 5-минутного краткого руководства по началу работы. Если вы уже ознакомились с кратким руководством и хотите создать более сложную надстройку, воспользуйтесь учебником.
Дополнительные сведения
Ознакомьтесь с этой документацией, чтобы узнать больше о разработке, тестировании и публикации надстроек Office.
При создании любой надстройки вы можете использовать информацию из раздела Жизненный цикл разработки этой документации, а также сведения из разделов для определенных приложений, соответствующих типу создаваемой надстройки (например, Excel).
Все началось около четырех лет назад. Работая над очередным проектом по автоматизации бизнес-процессов для крупной российской сети розничной торговли, я заинтересовался разработкой надстроек для офисных приложений, в частности, для Excel. Стоило мне несколько дней понаблюдать, как сотрудники компании-заказчика тратят уйму времени на рутинные повторяющиеся операции, как у меня появилось множество идей о том, как бы я мог упростить им жизнь.
- VBA (Visual Basic for Applications);
- VSTO (Visual Studio Tools for Office).
Думаю, всем разработчикам надстроек для Excel хорошо известны преимущества и недостатки обоих подходов. Большим преимуществом и того, и другого является очень богатое API, позволяющее автоматизировать практически любые задачи. К недостаткам же стоит отнести сложности в установке подобных расширений. Особенно это касается надстроек на базе VSTO, где, зачастую, для инсталляции требуются административные права, получение которых может быть проблематичным для конечных пользователей.
По ряду причин, обсуждение которых выходит за рамки данной статьи, я выбрал для себя вариант с VSTO. Так родилась наша первая надстройка для Microsoft Excel — XLTools. В первую версию продукта вошли инструменты, позволяющие:
- производить очистку данных в ячейках Excel (удалять лишние пробелы и непечатные символы, приводить регистр к единому виду, и т.д.);
- преобразовывать таблицы из «двумерного вида» в «плоский» (unpivot);
- сравнивать данные в столбцах;
- инструмент для автоматизации всех вышеперечисленных действий.
Появление Office Store
Буквально через год после выхода в свет первой версии надстройки XLTools, мы узнали, что Microsoft запускает новую платформу для продвижения расширений под Office – Office Store. Моя первая мысль – а можем ли мы опубликовать там нашу новую надстройку XLTools? Может к сожалению, а может к счастью, но ответ на этот вопрос – НЕТ. Ни VBA, ни VSTO надстройки не могут быть опубликованы в Office Store. Но стоит ли расстраиваться? К счастью, и здесь ответ – НЕТ, не стоит. Далее я объясню – почему.
Новая концепция Add-Ins для Office
Что же такое Office Store и для чего он нам нужен? Если кратко, то это платформа, которая помогает пользователям и разработчикам искать, скачивать, продавать и покупать надстройки, расширяющие стандартный функционал Office-программ, будь то Excel, Word, Outlook, OneNote или PowerPoint. Если раньше конечным пользователям приходилось искать нужные им надстройки в поисковиках, то сейчас для этого создано единое место – Office Store, доступ к которому возможен прямо из интерфейса офисных программ. Пункт меню «Вставка» -> «Мои надстройки»:
Как мы уже выяснили, опубликовать надстройки, разработанные с использованием VBA или VSTO, в Office Store не получится. С выходом Office 365 и Office Store, Microsoft предложила нам новый способ разработки надстроек с использованием JavaScript API для Office, подразумевающий разработку приложений с использованием веб-технологий, таких как HTML5, CSS, JavaScript и Web Services.
Новый подход обладает как преимуществами, так и недостатками. К преимуществам можно отнести:
- Простоту установки надстроек из Office Store;
- Кроссплатформенность из коробки (Excel 2013/2016, Excel Online, Excel for iPad);
- Возможность использования накопленного опыта веб-разработки (нет необходимости изучать новые технологии, если в команде уже есть веб-разработчики);
- Готовая инфраструктура, позволяющая продавать надстройки по фиксированной цене или по подписке.
- Менее богатое API по сравнению с VSTO и VBA (надеюсь, эта проблема будет становиться все менее и менее актуальной с выходом новых версий API).
Разработка надстроек для Excel «по новым правилам»
Итак, с чего же начать, если мы хотим идти в ногу со временем и не упустить новую волну приложений для Office?
Есть два варианта. На текущий момент, разрабатывать приложения на базе JavaScript API мы можем в:
- Napa – легковесная веб-версия среды разработки для быстрого старта. Будет полезна разработчикам, у которых нет Visual Studio, или тем, кто хочет разрабатывать под операционной системой, отличной от Windows;
- Visual Studio, начиная с версии 2012, с установленным пакетом Office Developer Tools – более мощная и функциональная среда разработки. Те, кто раньше разрабатывал под VSTO, могут сразу начинать с этого варианта, т.к. Visual Studio у них уже есть.
- Первое отличие заключается в том, что, разрабатывая надстройки на VBA или VSTO, мы могли создавать так называемые «пакетные» продукты, в состав которых входил целый ряд функций. XLTools является отличным примером – надстройка включает в себя множество опций для работы с ячейками, таблицами, столбцами, и т.д. При разработке надстроек для Office Store о таком подходе придется забыть. Планируя разработку, мы должны задуматься над тем, какие именно законченные, изолированные друг от друга функции мы хотим предоставить конечным пользователям. В случае с XLTools, те функции, которые изначально были реализованы в одной надстройке, сейчас представлены пятью отдельными приложениями в Office Store. Такой подход позволяет сделать решения более узконаправленными и повысить количество скачиваний надстроек целевыми пользователями;
- Второе отличие заключается в разнице между JavaScript API и VSTO/VBA API. Здесь стоит детально изучить возможности, предоставляемые JavaScript API. Для этого советую воспользоваться приложениями API Tutorial (Task Pane) и API Tutorial (Content) от Microsoft.
Разработка надстройки для Excel c использованием Visual Studio и JavaScript API
По умолчанию в Visual Studio есть предустановленные шаблоны проектов для разработки надстроек под Office Store, поэтому создание нового проекта занимает буквально секунды.
Сам проект состоит из файла-манифеста и веб-сайта. Файл манифеста выглядит так:
Основное, что нужно отметить в этом файле:
- Id – должен быть уникальным для каждого приложения;
- Version – должна совпадать с версией, указываемой при публикации надстройки через Seller Dashboard (личный кабинет вендора/разработчика, через который осуществляется все управление надстройками, публикуемыми в Office Store);
- IconUrl и SupportUrl – ссылки должны быть работающими и указывать на расположение картинки-логотипа и страницы с описанием функционала надстройки. В случае, если ссылки будут указаны неверно, манифест не пройдет проверку при публикации через Seller Dashboard;
- Permissions – определяет уровень доступа надстройки к данным документа. Может принимать такие значения как Restricted, Read document, Read all document, Write document, Read write document;
- SourceLocation – путь к «домашней» странице приложения на веб-сайте.
- Добавление «привязки» к выбранному пользователем диапазону ячеек в Excel для дальнейшей работы с ними:
- Получение данных из диапазона ячеек с использованием ранее созданной «привязки»:
- Обновление данных в диапазоне ячеек с использованием ранее созданной «привязки»:
Все методы JavaScript API хорошо документированы, их подробное описание можно посмотреть на сайте MSDN.
В зависимости от сценария, обработка данных может происходить как непосредственно на клиенте, т.е. в JavaScript-коде, так и на сервере. Для обработки данных на сервере можно добавить нужные сервисы прямо на сайт, к примеру, с использованием Web API. Общение клиента (надстройки) с веб-сервисами происходит так же, как мы привыкли это делать на любом другом сайте – при помощи AJAX-запросов. Единственное, что нужно учитывать – если Вы планируете использовать сторонние сервисы, расположенные на чужих доменах, то непременно столкнетесь с проблемой same-origin policy.
Публикация надстройки в Office Store
Выводы
В заключение стоит сказать, что надстройки XLTools являются отличным примером того, как можно трансформировать существующие решения на базе технологий VBA/VSTO в кроссплатформенные решения для Office 365. В нашем случае, мы смогли перенести в Office Store добрую половину функций из Desktop-версии XLTools, реализовав шесть отдельных приложений.
Управление надстройками в программах Office
Теперь давайте посмотрим, как просматривать, управлять, отключать, устанавливать или удалять надстройки в Word, PowerPoint, Outlook, Excel и т. Д., В программах Office. Как уже упоминалось, мы берем Word в качестве примера, но процедура аналогична для других.
1]Как установить надстройку Office
Отсюда нажмите на раздел «Получить надстройки» и дождитесь, пока перед вашими глазами появится новое окно.
В этом окне находятся все надстройки, доступные для этого инструмента. На левой панели пользователь может выбрать категорию или просто найти конкретную надстройку. Справа пользователи должны увидеть список надстроек. Просто найдите те, которые вам нужны, и нажмите кнопку с надписью «Добавить».
После добавления надстройки она должна появиться на ленте.
Щелкните по нему, чтобы получить дополнительные параметры или запустить его для использования.
2]Как удалить надстройку Office
В появившемся окне пользователь должен увидеть все установленные надстройки. Щелкните правой кнопкой мыши по любому из них, затем выберите «Удалить», чтобы избавиться от него.
Управление надстройками Com в программах Office
1]Как установить надстройки COM
Наконец, нажмите «Добавить» в появившемся разделе и найдите надстройку, хранящуюся на жестком диске, для добавления. Когда вы закончите с ним, повторите процедуру еще раз, но на этот раз нажмите «Удалить», чтобы удалить его.
2]Отключить все надстройки
Вы когда-нибудь чувствовали необходимость отключить все надстройки за один раз? Вы можете захотеть сделать это из-за коррупции или чего-то еще.
Перейдите в меню «Файл», «Параметры», «Центр управления безопасностью» и, наконец, выберите «Параметры центра управления безопасностью». В новом разделе выберите Надстройки и в разделе (COM, VSTO и Другое) перейдите и установите флажок рядом с Отключить все надстройки приложений.
Имейте в виду, что отключение может привести к тому, что ваш офисный пакет не сможет выполнять определенные задачи, не забывайте об этом.
Word уже поставляется со всеми необходимыми компонентами для работы с документами. Однако вы можете пойти еще дальше, установив несколько удобных надстроек Microsoft Word. Как плагин, который поможет вам улучшить ваше письмо, или тот, который поможет вам интегрировать сервис обмена изображениями в Word.
Мы выбрали лучшие надстройки для Word, чтобы вам не пришлось тратить время на просмотр множества различных плагинов в Microsoft Office.
Где найти надстройки для Microsoft Word
Если вы решили оживить Word, добавив несколько дополнительных плагинов, вам не нужно далеко ходить, чтобы найти их. Вы можете просмотреть все надстройки в официальном магазине Microsoft Office. Там вы можете прочитать о каждом плагине, прежде чем принять решение добавить его в Word.
Как установить надстройки для Word
Выбрав плагин, который вы хотите добавить, выполните следующие действия, чтобы установить его.
- Откройте документ Word.
- В главном меню ленты вверху найдите Вставить Вкладка.
- Под Вставить, Выбрать Add-Ins,
- Это приведет вас к Офисные надстройки меню.
- Когда вы найдете плагин, который вам нравится, нажмите Добавить установить его в ваше слово. Затем вы можете просмотреть плагины, которые вы уже добавили в том же меню под Мои надстройки,
Давайте теперь посмотрим на некоторые из лучших надстроек Microsoft Word, которые мы нашли.
Хотя Википедия не считается одним из самых надежных источников для получения вашей информации, она по-прежнему остается одной из крупнейших энциклопедий с открытым исходным кодом, которую вы можете найти в Интернете. И это может быть удобно иметь в качестве виджета на стороне вашего письма или редактирования.
Вы можете просматривать статьи Википедии, введя вашу запись в строку поиска. Или просто выделите слово или фразу в вашем документе, и плагин автоматически выведет подходящую статью.
Даже если вы не можете внести свой вклад в страницу Википедии, используя это дополнение, получение дополнительных знаний по теме, над которой вы работаете, может быть желанным отвлечением.
Эта надстройка позволяет связывать документы Excel и Word и, таким образом, связывать и обмениваться данными взад-вперед, не копируя их вручную.
Теперь, если вам когда-нибудь понадобится обновить документ Word данными Excel, вы можете вставить его из электронных таблиц прямо в файл Word. И это будет выглядеть лучше, чем если бы вы просто попытались вставьте лист Excel в документ Word,
Типы данных, которые вы можете связать, включают в себя текст, списки, таблицы, изображения и диаграммы.
Чтобы добавить уравнение, просто напишите его в окне плагина с помощью мыши или пальца. Надстройка распознает математические символы и автоматически преобразует их в типизированное уравнение.
Надстройка Vertex42 может помочь вам повысить эффективность и сэкономить время. Он предлагает широкий спектр шаблонов, которые иначе недоступны в Word.
Шаблоны в Vertex организованы по категориям. Вы можете просмотреть более 300 шаблонов, которые служат десяткам различных целей, от составления бюджета до журналов тренировок. Он также включает некоторые из наших любимых шаблонов протоколов встреч.
Чтобы получить доступ ко всему каталогу pixabay, установите плагин Pixabay Images, а затем введите ссылку на изображение в строке поиска сбоку.
Помимо грамматики и орфографии, плагин будет проверять, насколько последовательны ваши письма. Это включает использование чисел в предложениях, различных международных написаний, переносов и прочего. Если вы пишете официальный документ, надстройка перехватит любую сокращенную форму слова, которую вы используете, и предложит вам ее прописать. В конце ваш текст будет полностью вычитан и готов к работе.
Включите его в режим таймера, если вы гоняетесь в срок. Или переключите его в режим счетчика слов для дополнительной мотивации. После того, как ваша письменная сессия закончена, вы можете посмотреть статистику своей работы и проанализировать свои результаты.
Вы можете использовать классическую дневную версию плагина или перейти в модный темный режим. Приятным бонусом также является возможность привлечь других пользователей и превратить ваше письмо в конкурс.
Пройдите лишнюю милю с помощью надстроек Microsoft Word
Умение максимально эффективно использовать любое программное обеспечение может упростить вашу жизнь и улучшить общее восприятие пользователя. Точно так же, когда Word становится опытным пользователем, он может поднять вашу работу на совершенно новый уровень.
Изучение некоторых важных советов и приемов Microsoft Word может стать для вас идеальным первым шагом. Тогда начало использования надстроек Microsoft Word будет хорошей секундой.
Какие плагины Microsoft Word вы используете? Это каким-то образом улучшило ваш рабочий процесс и производительность? Поделитесь своим опытом с нами в комментариях ниже.
Читайте также: