Надстройка для MS Excel

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

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Исходный код проекта и инструкции по установке и использованию опубликованы на GitHub под лицензией MIT (неограниченное право на использование, копирование, изменение).


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

Ниже приведу краткое описание некоторых функций.

Конвертация чисел, форматированных как текст


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


Ниже пример преобразования чисел при помощи надстройки. Столбец B для примера заполнен формулой "=A2+1", которая демонстрирует, является ли значение слева числом:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Переключение регистра текста


В MS Word есть удобная функция, доступная по Shift+F3, которая переключает регистр выделенного текста (в последовательности "Sentence case" -> "lowercase" -> "UPPERCASE"). Иногда такой функции не хватает и в Excel, но надстройка восполняет этот пробел:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Очистка текста от пробельных символов


Позволяет очистить текст от пробелов в начале и конце значения, а также от повторяющихся пробелов и переносов строки в середине текста:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Интерактивный поиск ячеек, в которых произошла ошибка вычисления


Показывает список всех ячеек с ошибкой (например, "#Н/Д"), и позволяет быстро перемещаться к выбранной ячейке:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

И другие функции:


- Подсветка дублей (разными цветами группы одинаковых значений)

- «Размерживание» объединенных ячеек с их заполнением

- Снятие пароля с защищённой книги и листов

- Экспорт таблицы в markdown

- Проверка значений в выделенном диапазоне ячеек (числа, даты, корректный ИНН ЮЛ/ФЛ и т.д.)


Также есть функции по работе с XML, не относящиеся напрямую к Excel, но в которых иногда возникает потребность, а инструмента, который бы свободно распространялся и вызывал доверие, у меня сходу найти не получилось:


- Сформировать пример XML файла на основе XSD-схемы

- Проверить XML по XSD-схеме


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


Для автоматической сборки установочных файлов настроена сборка в Azure.

Выберите последнюю по времени успешную сборку пайплайна NavfertyExcelAddIn - Publish и скачайте опубликованные файлы:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Важный момент: при установке надстройки Excel "запоминает" путь к папке, из которой она была установлена, и в будущем установка обновлений будет возможна только из этой папки, в противном случае нужно будет воспользоваться "установкой и удалением программ" через Панель управления Windows.


Для установки надстройки нужно запустить файл .vsto. Разумеется, установка возможно только при наличии установленного MS Excel =)


Если всё сделано правильно, то Вы увидите новую вкладку при следующем запуске Excel:

Надстройка для MS Excel Microsoft Excel, Надстройка, Полезное, Длиннопост

Если Вы .NET-разработчик и хотите присоединиться к работе над проектом, пишите мне на почту (указана в профиле гитхаба), заводите issue и пулл-реквесты.

Если Вы только изучаете платформу .NET, и хотите поучаствовать - не стесняйтесь! Читайте исходный код, задавайте вопросы, если что-то непонятно - буду рад объяснить и поделиться знаниями =)

Еще раз ссылка на проект (там же инструкции по использованию и установке):

https://github.com/navferty/NavfertyExcelAddIn

MS, Libreoffice & Google docs

719 постов15K подписчиков

Добавить пост

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях


Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий
@navferty как вариант ещё добавить автоматическую замену, в выделенном диапазоне, кириллицы на латиницу (а-a, у-y и т. д. ) очень бы пригодилось.
раскрыть ветку (6)
раскрыть ветку (5)
Автор поста оценил этот комментарий
Почти) я на самом деле не транскрипцию имел в виду. А именно замену схожих букв. Объясню на примере: есть кладовщики, которые упорно отказываются понимать, что в серийном номере ABH12333KP нет кириллицы. А смежные отделы это давно уяснили, начинаются несостыковки.
раскрыть ветку (4)
1
Автор поста оценил этот комментарий

В принципе можно расширить - добавив на эту кнопку дроп-даун с выбором - транслитерация или замена схожих букв

раскрыть ветку (3)
Автор поста оценил этот комментарий
Вот это будет очень круто!
раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Что должно происходить с остальными буквами. Оставлять или убирать? Какой из вариантов предпочительнее:


"абвгдек" -> "aбbгдek" (где a,b,e,k латинские)

"абвгдек" -> "abek" (где буквы без соответствия удалены)

"абвгдек" -> "abbgdek" (сначала соответствие по написанию, а если не найдено - по произношению)

раскрыть ветку (1)
Автор поста оценил этот комментарий
Мне кажется первый вариант предпочтительнее. Так будет проще найти изначальную ошибку. Т. К. Данная функция подразумевает что в выделенном диапазоне не должно быть кириллических символов.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку