Foreversoft.ru

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

Strokescribe office add in

Office Add-Ins для Excel — новые возможности для разработчиков на VBA и VSTO

Предыстория

Все началось около четырех лет назад. Работая над очередным проектом по автоматизации бизнес-процессов для крупной российской сети розничной торговли, я заинтересовался разработкой надстроек для офисных приложений, в частности, для 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 у них уже есть.

В данной статье мы рассмотрим разработку с использованием Visual Studio, т.к. сам я использую именно ее. Если Вам интересно попробовать Napa, то ознакомиться с этим инструментом и начать работу с ним можно здесь.

Перед началом разработки стоит также обратить внимание на пару существенных отличий VBA/VSTO надстроек от надстроек для Office Store:

  • Первое отличие заключается в том, что, разрабатывая надстройки на VBA или VSTO, мы могли создавать так называемые «пакетные» продукты, в состав которых входил целый ряд функций. XLTools является отличным примером – надстройка включает в себя множество опций для работы с ячейками, таблицами, столбцами, и т.д. При разработке надстроек для Office Store о таком подходе придется забыть. Планируя разработку, мы должны задуматься над тем, какие именно законченные, изолированные друг от друга функции мы хотим предоставить конечным пользователям. В случае с XLTools, те функции, которые изначально были реализованы в одной надстройке, сейчас представлены пятью отдельными приложениями в Office Store. Такой подход позволяет сделать решения более узконаправленными и повысить количество скачиваний надстроек целевыми пользователями;
  • Второе отличие заключается в разнице между JavaScript API и VSTO/VBA API. Здесь стоит детально изучить возможности, предоставляемые JavaScript API. Для этого советую воспользоваться приложениями API Tutorial (Task Pane) и API Tutorial (Content) от Microsoft.
Читать еще:  Kmsauto активатор office 2020

Разработка надстройки для 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 – путь к «домашней» странице приложения на веб-сайте.

Веб-сайт состоит из минимального набора HTML, JavaScript и CSS файлов, необходимых для работы приложения, и по умолчанию предоставляет базовый UI, на основе которого мы можем строить UI для нового решения. Стоит отметить, что одним из требований к сайту является работа по HTTPS. Это означает, что в случае публикации сайта на собственных серверах или на собственном домене, Вам потребуется SSL сертификат. В случае, если Вы планируете использовать, к примеру, Azure Website, этой проблемы можно избежать, т.к. все сайты, развернутые на поддомене azurewebsites.net, по умолчанию доступны как по протоколу HTTP, так и протоколу HTTPS.

Для взаимодействия с данными Excel в JavaScript API предусмотрен стандартный набор методов. Приведу примеры использования лишь некоторых, из числа тех, которые мы использовали при разработке надстройки «XLTools.net Очистка данных»:

  • Добавление «привязки» к выбранному пользователем диапазону ячеек в Excel для дальнейшей работы с ними:
  • Получение данных из диапазона ячеек с использованием ранее созданной «привязки»:
  • Обновление данных в диапазоне ячеек с использованием ранее созданной «привязки»:

Все методы JavaScript API хорошо документированы, их подробное описание можно посмотреть на сайте MSDN.

В зависимости от сценария, обработка данных может происходить как непосредственно на клиенте, т.е. в JavaScript-коде, так и на сервере. Для обработки данных на сервере можно добавить нужные сервисы прямо на сайт, к примеру, с использованием Web API. Общение клиента (надстройки) с веб-сервисами происходит так же, как мы привыкли это делать на любом другом сайте – при помощи AJAX-запросов. Единственное, что нужно учитывать – если Вы планируете использовать сторонние сервисы, расположенные на чужих доменах, то непременно столкнетесь с проблемой same-origin policy.

Публикация надстройки в Office Store

Для публикации надстройки в Office Store Вам необходимо зарегистрироваться на сайте Microsoft Seller Dashboard. После регистрации Вы получите доступ к личному кабинету, где сможете загрузить манифест Вашего приложения и заполнить всю необходимую информацию о нем. Исходя из личного опыта, могу сказать, что проверка приложения после отправки на утверждение занимает обычно от одного до трех рабочих дней. После проверки приложения сотрудниками Microsoft и его одобрения, оно становится доступно для скачивания миллионам пользователей по всему миру через Office Store:

Выводы

В заключение стоит сказать, что надстройки XLTools являются отличным примером того, как можно трансформировать существующие решения на базе технологий VBA/VSTO в кроссплатформенные решения для Office 365. В нашем случае, мы смогли перенести в Office Store добрую половину функций из Desktop-версии XLTools, реализовав шесть отдельных приложений.

Все они в настоящий момент доступны для скачивания через Office Store:

  • XLTools.net SQL запросы — выполнение SQL запросов к данным в таблицах Excel;
  • XLTools.net CSV Export for Excel — позволяет сохранить таблицу в Excel, как CSV файл с указанием нужного разделителя: запятая, точка с запятой или tab;
  • XLTools.net Очистка данных — очистка массива данных: удаление пробелов, изменение регистра текста, перевод текста в числа, т.д.;
  • XLTools.net Unpivot Table for Excel — помогает пользователям Excel трансформировать сложные двумерные таблицы в плоский вид;
  • XLTools.net Отчёты SendGrid — выгрузка отчетов о доставке из аккаунта SendGrid в Excel;
  • XLTools.net Columns Match — сравнение столбцов, поиск столбцов с одинаковыми данными, расчет процента соответствия данных в столбцах.

Так же хотелось бы отметить, что помимо привычных сценариев, с появлением Office Store и Office 365, у нас, как у разработчиков, появились новые возможности по разработке расширений с использованием Office 365 API, позволяющего получить доступ к данным таких сервисов как Mails, Calendars, SharePoint Online, OneDrive for Business и т.д. Кто знает, что мы сможем построить завтра с использованием этих возможностей. Время покажет!

Об авторе

Петр Ляпин -Технический директор ООО «ВейвПоинт»

Добавление и удаление надстроек в Excel

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

Надстройки расширяют диапазон команд и возможностей Microsoft Excel. По умолчанию они доступны не сразу, поэтому сначала их необходимо установить и (в некоторых случаях) активировать.

Вы ищете сведения о надстройках Office на основе HTML, CSS и JS? В этом случае ознакомьтесь со статьей получение надстройки Office для Excel.

Некоторые надстройки, такие как «Пакет анализа» и «Поиск решения», встроены в Excel. Другие доступны в Центре загрузки, и их необходимо предварительно скачать и установить. Кроме того, некоторые надстройки создаются сторонними организациями, например поставщиками программных решений или программистами. Это могут быть надстройки модели COM, надстройки Visual Basic для приложений (VBA) и надстройки DLL. Они также требуют установки.

Большинство надстроек можно разделить на три типа, описанных ниже.

Надстройки Excel. Обычно к этому типу относят файлы надстроек Excel (XLAM), Excel 97–2003 (XLA) и надстроек DLL (XLL), а также надстройки автоматизации. Некоторые надстройки Excel, такие как «Пакет анализа» и «Поиск решения», становятся доступны после установки Microsoft Office или Excel. Для использования этих надстроек в большинстве случаев нужно лишь активировать их.

Скачиваемые надстройки. Дополнительные надстройки для Excel можно скачать и установить со страницы Загрузки на сайте Office.com.

Пользовательские надстройки. Многие разработчики и поставщики решений создают пользовательские надстройки модели COM, надстройки автоматизации, VBA и XLL. Они требуют установки.

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

Вкладка Данные. После установки и активации надстроек «Пакет анализа» и «Поиск решения» в группе Анализ становятся доступны команды Анализ данных и Поиск решения.

Вкладка Формулы. После установки и активации инструментов для евро в группе Решения становятся доступны команды Пересчет в евро и Формат евро.

Вкладка Надстройки. Другие надстройки можно добавить на вкладку Надстройки. Эта вкладка добавляется на ленту после установки и активации первой надстройки, которая должна отображаться на ней. Если вкладка надстройки не отображается, необходимо закрыть и перезапустить Excel.

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

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

Активация надстройки Excel

На вкладке Файл выберите команду Параметры, а затем — категорию Надстройки.

В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.

Откроется диалоговое окно Надстройки.

В поле Доступные надстройки установите флажок той надстройки, которую необходимо активировать, а затем нажмите кнопку ОК .

Если в окне Доступные надстройки не удается найти надстройку, которую требуется активировать, возможно, ее требуется установить.

Установка надстройки Excel

Чтобы установить надстройку, которая обычно устанавливается вместе с Excel, например «Пакет анализа» или «Поиск решения», запустите программу установки Excel или Microsoft Office и выберите вариант Изменить, а затем выберите требуемую надстройку. После перезапуска Excel она должна появиться в поле Доступные надстройки.

Некоторые надстройки Excel хранятся на компьютере. Чтобы установить или активировать их, нажмите кнопку Обзор (в диалоговом окне Надстройки), найдите надстройку, а затем нажмите кнопку ОК.

Некоторые надстройки Excel требуют запуска пакета установки. В этом случае может потребоваться загрузить или скопировать пакет установки на компьютер (обычно пакеты установки имеют расширение MSI), а затем запустить его.

Другие надстройки, отсутствующие на компьютере, можно скачать и установить с помощью веб-браузера со страницы Загрузки или с других сайтов в Интернете или на сервере организации. Чтобы скачать их, следуйте инструкциям по установке.

Отключение надстройки Excel

На вкладке Файл выберите команду Параметры, а затем — категорию Надстройки.

В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.

В поле Доступные надстройки снимите флажок той надстройки, которую нужно деактивировать, а затем нажмите кнопку ОК .

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

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

Удаление надстройки Excel

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

Откройте вкладку Файл и выберите пункт Выход.

Выберите в панели управления пункт Программы и компоненты (для Windows 7 и Windows Vista) или Установка и удаление программ (для Windows XP).

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

Если приложение Excel было установлено в составе пакета Microsoft Office, в списке установленных программ выберите пункт Microsoft Office, а затем нажмите кнопку Заменить.

Если приложение Excel было установлено отдельно, в списке установленных программ выберите название программы, а затем нажмите кнопку Заменить.

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

Следуйте инструкциям программы установки.

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

Добавление надстройки COM

На вкладке Файл выберите команду Параметры, а затем — категорию Надстройки.

В списке Управление нажмите Надстройки COM, а затем — Перейти.

Откроется диалоговое окно Надстройки COM.

В поле Доступные надстройки установите флажок для той надстройки, которую необходимо установить, и нажмите кнопку ОК.

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

Удаление надстройки COM

На вкладке Файл выберите команду Параметры, а затем — категорию Надстройки.

В списке Управление нажмите Надстройки COM, а затем — Перейти.

Откроется диалоговое окно Надстройки COM.

В поле Список надстроек снимите флажок той надстройки, которую нужно удалить, а затем нажмите кнопку ОК .

Примечание. В результате надстройка будет удалена из памяти, но ее имя останется в списке доступных надстроек. Надстройка не будет удалена с компьютера.

Чтобы удалить надстройку COM из списка доступных надстроек и с компьютера, щелкните ее имя в поле Список надстроек, а затем нажмите кнопку Удалить.

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

На вкладке Файл выберите команду Параметры, а затем — категорию Надстройки.

В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.

Откроется диалоговое окно Надстройки.

Чтобы установить надстройку автоматизации, в поле Доступные серверы автоматизации выберите пункт Автоматизация и щелкните нужную надстройку.

Совет Если нужной надстройки нет в списке, нажмите кнопку Обзор , найдите нужную надстройку, а затем нажмите кнопку ОК .

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

Некоторые надстройки, такие как «Пакет анализа» и «Поиск решения», встроены в Excel. Другие доступны в Центре загрузки, и их необходимо предварительно скачать и установить. Кроме того, некоторые надстройки создаются сторонними организациями, например поставщиками программных решений или программистами. Это могут быть надстройки модели COM, надстройки Visual Basic для приложений (VBA) и надстройки DLL. Они также требуют установки.

Большинство надстроек можно разделить на три типа, описанных ниже.

Надстройки Excel. Обычно к этому типу относят файлы надстроек Excel (XLAM), Excel 97–2003 (XLA) и надстроек DLL (XLL), а также надстройки автоматизации. Некоторые надстройки Excel, такие как «Пакет анализа» и «Поиск решения», становятся доступны после установки Microsoft Office или Excel. Для использования этих надстроек в большинстве случаев нужно лишь активировать их.

Скачиваемые надстройки. Дополнительные надстройки для Excel можно скачать и установить со страницы Загрузки на сайте Office.com.

Пользовательские надстройки. Многие разработчики и поставщики решений создают пользовательские надстройки модели COM, надстройки автоматизации, VBA и XLL. Они требуют установки.

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

Вкладка Данные. После установки и активации надстроек «пакет анализа» и «Поиск решения» команды » анализ данных » и «Поиск решения» доступны на вкладке » данные » на ленте.

Вкладка » Главная «. Другие надстройки можно добавить на вкладку » Главная «.

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

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

Активация предварительно установленной надстройки Excel

В меню Сервис выберите пункт надстройки.

В диалоговом окне Доступные надстройки установите флажок для надстройки, которую требуется активировать, и нажмите кнопку ОК.

Установка надстройки Excel

Некоторые надстройки Excel находятся на вашем компьютере и могут быть установлены или активированы с помощью кнопки Обзор (в диалоговом окне » надстройки » выше), чтобы найти надстройку, а затем нажмите кнопку ОК.

Некоторые надстройки Excel требуют запуска пакета установки. В этом случае может потребоваться загрузить или скопировать пакет установки на компьютер (обычно пакеты установки имеют расширение MSI), а затем запустить его.

Другие надстройки, недоступные на вашем компьютере, можно скачать и установить с помощью веб-браузера из загрузок или с других сайтов в Интернете, с сервера в организации или с помощью встроенного параметра » магазин » в Excel. Чтобы скачать их, следуйте инструкциям по установке.

Установка надстроек из магазина

Откройте вкладку Вставка на ленте.

Нажмите кнопку магазин .

Чтобы найти надстройки, используйте поле » категории » или » Поиск «.

Нажмите кнопку Добавить , чтобы установить надстройку.

Примечание: Некоторые надстройки должны быть приобретены.

Удаление надстройки Excel

На вкладке Вставка нажмите кнопку Моинадстройки.

В надстройках Officeщелкните меню 3 точки рядом с надстройкой.

Прочитайте уведомление о других устройствах и нажмите кнопку Удалить.

Ссылка на основную публикацию
Adblock
detector