Предыстория
Все началось около четырех лет назад. Работая над очередным проектом по автоматизации бизнес-процессов для крупной российской сети розничной торговли, я заинтересовался разработкой надстроек для офисных приложений, в частности, для 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.
Разработка надстройки для Excel c использованием Visual Studio и JavaScript API
По умолчанию в Visual Studio есть предустановленные шаблоны проектов для разработки надстроек под Office Store, поэтому создание нового проекта занимает буквально секунды.
Сам проект состоит из файла-манифеста и веб-сайта. Файл манифеста выглядит так:
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="TaskPaneApp">
<Id>11111111-1111-1111-1111-111111111111</Id>
<Version>1.0.1</Version>
<ProviderName>WavePoint Co. Ltd.</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="XLTools.net Data Cleaning for Excel" />
<Description DefaultValue=" Clean bulk data fast: remove extra spaces, change text case, convert text format to numbers, etc."/>
<IconUrl DefaultValue="~remoteAppUrl/App/DataCleansing/Images/Logo32.png"></IconUrl>
<SupportUrl DefaultValue="http://xltools.net/excel-apps/data-cleaning-app/"></SupportUrl>
<Capabilities>
<Capability Name="Workbook" />
</Capabilities>
<DefaultSettings>
<SourceLocation DefaultValue="~remoteAppUrl/App/DataCleansing/Home.html" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
Основное, что нужно отметить в этом файле:
- 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 для дальнейшей работы с ними:
Office.context.document.bindings.addFromPromptAsync(Office.BindingType.Matrix, {
id: "RangeToClean"
}, function (asyncResult) {
if (asyncResult.status == "failed") {
// Some specific code here
}
else {
// Some specific code here
}
});
- Получение данных из диапазона ячеек с использованием ранее созданной «привязки»:
Office.select("bindings#RangeToClean", onBindingNotFound).getDataAsync(
{},
doDataCleaning
);
- Обновление данных в диапазоне ячеек с использованием ранее созданной «привязки»:
Office.select("bindings#RangeToClean").setDataAsync(range,function (asyncResult) {
if (asyncResult.status == "failed") {
// Some specific code here
}
else {
app.showNotification(UIText.ExecutedSuccessfully, '', 'success');
}
}).
Все методы 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 и т.д. Кто знает, что мы сможем построить завтра с использованием этих возможностей. Время покажет!
Об авторе
Петр Ляпин -Технический директор ООО «ВейвПоинт»
Более 10 лет опыта внедрения проектов по автоматизации
бизнес-процессов. Работал со множеством российских и
зарубежных компаний. Основатель проекта XLTools.net.
Содержание
- Начните применять XLTools уже сейчас
- Шаг 1. Добавить вкладку XLTools в Excel
- Шаг 2. Обзор панели инструментов XLTools
- Шаг 3. Свяжитесь с нами, если нужна техподдержка
- Подготовка данных, учёт изменений, автоматизация задач в Excel — легко
- Скачайте и пробуйте бесплатно 14 дней. Полная версия. Без кредитной карты.
- System Requirements
- Частые вопросы о пробном периоде XLTools
- Как начать пробный период?
- Как скачать и установить XLTools: краткая инструкция
- Системные требования
- Как скачать и установить XLTools: подробная инструкция
- Дальнейшие шаги после установки
- Get started with XLTools in no time
- Step 1. Add XLTools tab in Excel
- Step 2. Take a quick tour of XLTools ribbon
- Step 3. Get in touch if you need tech support
- Prepare data, track changes and automate tasks in Excel easily
- Download and start your 14-day free trial. Full version. No credit card required.
- System Requirements
- Frequent questions about XLTools free trial
- How do I start a trial?
XLTools – это мощная надстройка Excel, созданная специально для бизнес-пользователей. Она поможет вам быстрее и проще подготовить данные, отследить изменения и автоматизировать задачи.
Если вы только что начали пробный период или купили бессрочную лицензию, эта вводная инструкция поможет приступить к работе с XLTools.
Добавить вкладку XLTools на панель инструментов Excel займет не больше 3-х минут.
Скачайте надстройку
Укажите свой email адрес Мы сразу же отправим вам ссылку на загрузку.
Установите надстройку
Перейдите по ссылке на загрузку в email Установите XLTools на свой компьютер, как любую другую программу.
На всякий случай, здесь подробная Инструкция по установке.
Откройте Excel
Откройте Excel, и вы увидите вкладку XLTools на панели инструментов.
Надстройка XLTools включает 20+ разных инструментов для более удобной работы в Excel. На панели инструментов они сгруппированы по типу задач.
Группа «Дата и время»
Всплывающий календарь для вставки дат и времени в ячейки.
Группа «Очистка»
Инструменты для очистки данных в ячейках.
Группа «Преобразование»
Инструменты для преобразования и реорганизации таблиц и листов.
Группа «SQL запросы»
Инструмент для выполнения SQL запросов к таблицам Excel.
Группа «Вычисления»
Инструменты для выполнения вычислений.
Группа «Экспорт»
Инструмент для экспорта диапазонов Excel в формат CSV.
Группа «Email рассылки»
Инструмент слияния с почтой для отправки рассылок по списку контактов в Excel.
Группа «Автоматизация»
Продвинутый инструмент автоматизации рутинных задач в Excel.
Группа «Контроль версий»
Инструмент версионирования для учёта изменений в книгах и макросах.
Группа «Помощь»
Здесь можно задать настройки и горячие клавиши, активировать лицензию, проверить обновления и связаться с техподдержкой.
Шаг 3. Свяжитесь с нами, если нужна техподдержка
Мы всегда рады вас слышать! Техподдержка бесплатна и доступна онлайн, всегда отвечаем оперативно.
Напишите нам, если что-то не работает, или если вы хотите поделиться идеей нового инструмента. Каждая новая версия XLTools улучшена на основе ваших отзывов и реальных примеров работы.
С нами можно связаться любым из этих способов:
Из надстройки
Вкладка XLTools В группе «Помощь» нажмите Техподдержка Опишите проблему и отправьте сообщение.
На сайте
Зайдите на страницу Поддержка Заполните и отправьте форму контактов.
Напишите нам напрямую
Мы ответим вам в течение 24 рабочих часов или быстрее 🙂
Источник
Подготовка данных, учёт изменений, автоматизация задач в Excel — легко
Надстройку невероятно просто применять. XLTools ежедневно экономит мне не один час работы в Excel.
Скачайте и пробуйте бесплатно 14 дней. Полная версия. Без кредитной карты.
Надстройку невероятно просто применять. XLTools ежедневно экономит мне не один час работы в Excel.
Работает «из коробки»: скачайте и начните работать уже через 3 минуты.
С понятными инструментами и наглядными инструкциями не нужно долго изучать.
Сократите время на подготовку данных в Excel до считанных минут.
Избавляйтесь от обработки вручную и минимизируйте человеческий фактор.
Техподдержка доступна онлайн, бесплатно и всегда оперативно.
System Requirements
Как начать пробный период?
Укажите свой email адрес, и мы отправим вам ссылку на загрузку. Перейдите по ссылке, чтобы установить надстройку XLTools на свой компьютер. Вкладка XLTools появится на панели инструментов Excel, и пробный период начнётся автоматически. У вас будет 14 дней попробовать XLTools. Мы отправим вам несколько гайдов для начала работы.
Источник
Перейдите по ссылке на загрузку в своём email Установите XLTools на компьютер, как любую другую программу Запустите Excel и найдите вкладку XLTools на панели инструментов.
Если возникнут вопросы, посмотрите эту подробную пошаговую инструкцию.
Системные требования
Windows® версии 11, 10, 8.1, 8, 7.
(32-битные и 64-битные версии)
Проверьте свою версию: Панель управления Система и безопасность Система.
Microsoft Excel® версии 2021, 2019, 2016, 2013, 2010.
(32-битные и 64-битные версии)
Проверьте свою версию: Откройте MS Excel Файл Учетная запись О программе Excel.
Установка XLTools обычно занимает не более 3 минут.
Дальнейшие шаги после установки
Пробуете впервые? Ваш бесплатный пробный период начнётся автоматически. Посмотрите Как начать работу с надстройкой.
Купили лицензию? Активируйте свой лицензионный ключ. Посмотрите Инструкцию по активации лицензии.
Уважаемые пользователи! Спасибо всем, кто написал о сбоях после недавнего обновления надстройки XLTools.
Источник
XLTools is a powerful add-in for Excel designed for business users. It will help you prepare data, track changes and automate tasks in Excel quicker and easier.
Whether you have just started a free trial or bought a lifetime license, this introduction guide will help you put XLTools to work.
Adding XLTools tab to Excel ribbon takes only 3 minutes or even less.
Download the add-in
Provide your email address We will send you the download link immediately.
Install the add-in
Follow the download link in your email Install XLTools on your computer like any other program.
Just in case, here is the detailed Installation Guide.
Open Excel
Open Excel and see that the ribbon now includes XLTools tab.
XLTools Add-in contains 20+ different features to simplify your work in Excel. All the tools are arranged on the ribbon in groups by the type of tasks.
Date & Time group
Popup Calendar to insert date and time in cells.
Clean group
A set of tools to clean and refine data in cells.
Transform group
A set of tools to transform and rearrange tables and worksheets.
SQL Queries group
A tool to run SQL queries against Excel tables.
Calculate group
A set of tools to perform calculations.
Export group
An advanced tool to export Excel ranges to CSV format.
Mail Merge group
A mail merge tool to send emails to your contact list in Excel.
Automation group
An advanced tool to automate custom repetitive tasks in Excel.
Version Control group
A spreadsheet versioning tool to track changes and save backups.
Help group
Here you can configure settings and shortcuts, activate your license, check for updates and contact support.
Step 3. Get in touch if you need tech support
Our team is always happy to hear from you! Technical support is free and available online. It’s always prompt and friendly.
Please let us know if something is not working, or if you want to share your ideas of new features. Each new XLTools version has improvements based on user feedback and real use cases.
There are multiple ways you can reach us:
From the add-in
XLTools tab In the Help group click the Support button Send Feedback Describe your issue and send the message.
On the website
Visit the Support page Fill out and send the contact form.
Email us directly
We will get back to you within 24 business hours. Or faster 🙂
Источник
Prepare data, track changes and automate tasks in Excel easily
Breathtakingly easy to use on a spreadsheet! XLTools saves me hours in my day-to-day activities.
Download and start your 14-day free trial. Full version. No credit card required.
Breathtakingly easy to use on a spreadsheet! XLTools saves me hours in my day-to-day activities.
Works straight out of the box: download and start using in just 3 minutes.
With intuitive tools, detailed docs and online support, it doesn’t take long to learn.
Cut down weeks you spend on processing data in Excel to mere minutes.
Get rid of manual data manipulations and prevent human errors.
Tech support is available online, it’s always prompt and friendly.
System Requirements
How do I start a trial?
Provide your email address and we will send you the download link. Follow the link to install XLTools Add-in on your computer. XLTools tab will appear on Excel ribbon and free trial will start automatically. You will have 14 days to test-drive XLTools. We will send you a few brief guides to help you get started.
Источник
Excel tools for data manipulation, automation, and version control
Download the latest version from Software Informer
Scanned by 75 antivirus programs on Dec 18, 2022.
The file is clean, see the report.
Version: 5.7.1 (x86)
Date update: Nov 5, 2021
File name: xltools.exe
Size: 1.1 MB
Additional links
Download the latest version from the developer’s website
XLTools.exe
Purchase at xltools.net for
$199.95
Latest versions of XLTools Add-In for Microsoft Excel
Dose for Excel
The Excel plug-in that adds extensive functionality to your work in Excel.
Merge Excel Files
Merge Excel Files software can merge excel sheets into one new sheet
Boost your productivity when working with Microsoft Excel by taking advantage of a handy set of additional tools, with this useful add-in.
- XLTools Add-In for Microsoft Excel
- Version :5.0.0.733
- License :Trial
- OS :Windows All
- Publisher :XLTools
Download Now
XLTools Add-In for Microsoft Excel Description
Efficiency is crucial when working with Microsoft Excel, and, while the application already offers a comprehensive array of features, some operations could still be performed more quickly if you had a few more tools at your disposal.
XLTools Add-In for Microsoft Excel is a powerful toolkit that can streamline your workflow by enabling you to complete various tasks with just a few mouse clicks.
Useful Excel add-in that provides you with a set of essential productivity tools
Among the more simple features, we can mention the pop-up calendar, which can be used to insert certain dates while maintaining the correct formatting, and a sheet switcher for navigating through the document.
XLTools Add-In for Microsoft Excel also offers a data cleaning tool that enables you to remove unnecessary elements from imported content, a utility that allows you to transform tables into flat lists and a simple tool for converting tables to plain text CSV.
Moreover, the add-in makes it possible to merge multiple cells without losing data, compare columns and select cells using a recurrent pattern.
Offers several advanced tools for experienced users
XLTools Add-In for Microsoft Excel also features a version control system that can help you keep track of changes in Excel sheets and VBA modules, leave comments or return to a document’s previous state.
Additionally, the add-in enables you to automate various routine operations by writing a series of commands directly in an Excel table. Only basic VBA knowledge is required, and you can easily create custom buttons for performing multi-step tasks.
Powerful and easy-to-use Excel toolkit
XLTools Add-In for Microsoft Excel is very easy to set up, and extensive documentation is available online for users who need help making the most of the included tools.
On the whole, this is a great add-in for those who wish to perform various spreadsheet-related tasks more efficiently. It provides you with a decent array of new functions, and it is very novice-friendly.