211

Надстройка для MS Excel (часть 2)

Всем привет!

В прошлом посте я представил на суд общественности свой open-source проект - надстройку для MS Excel, с набором полезных функций. Пост был встречен очень тепло, многие пикабушники оставили пожелания о добавлении новых функций, а несколько человек написали мне с предложениями подключиться к разработке. Спасибо @1041618 за редизайн - мы обзавелись новыми иконками в едином стиле и поддержкой серой и тёмной тем, а также учитываем в локализации язык пакета MS Office.

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


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

Транслитерация кириллицы в латинские буквы


Конвертирует содержимое текстовых ячеек, содержащих символы кириллицы, в латинские символы (по стандарту ICAO doc 9303), за идею спасибо @negotivko

Подсветка дублей


Раскрашивает разными цветами группы одинаковых значений:

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


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

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


Markdown - это удобный язык разметки, используемый при форматировании текстов во многих системах: wiki (Confluence), GitHub, Gitlab, Reddit, Stack Exchange, OpenStreetMap и множество других. Функция копирования таблицы в markdown помещает в буфер обмена отформатированную таблицу с заголовками, и Вы легко можете вставить ее в свой документ:

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


Можно проверить, например, список ИНН организаций на корректность (по контрольным цифрам в номере):

Кроме того, есть две функции по работе с XML-файлами. Они не относятся напрямую к функциональности Excel, но иногда в них возникает потребность:

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


Если у вас есть файл XSD, который содержит xml-схему, Вы можете сформировать образец XML-файла на основе этой схемы:

К сожалению, сформировать документ, который бы полностью соответствовал всем описанным правилам, невозможно - некоторые ограничения определяются паттернами (например, регулярными выражениями). Тем не менее, это поможет получить наглядное представление о структуре XML-документа.


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


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

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


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

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


Для установки надстройки нужно запустить файл .vsto


Хотел бы предупредить об одном ограничении: при вызове функций надстройки (как COM-надстроек, так и VBA) в MS Excel очищается стек последних действий пользователя для отмены (Undo). Я работаю над тем, чтобы обойти это ограничение хотя бы для возможности отмены выполнения самой функции, но пока что будьте внимательны при запуске функций - отменить действие можно будет, только закрыв книгу без сохранения.


Более подробная инструкция по установке, а также инструкции по использованию и исходный код - на странице проекта в гитхабе:

https://github.com/navferty/NavfertyExcelAddIn


Спасибо всем, кто предлагал идеи по улучшению проекта в комментариях к прошлому посту. Если у Вас есть новые идеи - оставляйте комментарии!


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

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

MS, Libreoffice & Google docs

762 поста14.9K подписчика

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

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

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

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

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

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


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

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

Вы смотрите срез комментариев. Показать все
0
DELETED
Автор поста оценил этот комментарий
Подсветка дублей. Так вроде есть такое в экселе. Часто пользуюсь.
раскрыть ветку (19)
3
Автор поста оценил этот комментарий

Да есть, но она в некоторых задачах бестолковая.

К примеру у меня есть группы товаров с разными характеристиками и  артикулами.  И наименование. Наименование более уникально так как в нем описывается цвет товара а в артикуле - нет.

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

Вчера наткнулся на пост @navferty и премного ему благодарен. тыкнул в отсортированном списке подсветить дубли и в наименованиях и артикулах - увидел несовпадающие группы и на месте откорректировал. Сэкономил полчаса-час точно за заход :) И глаза не болят.


БЛАГОДАРЮ!

раскрыть ветку (17)
1
Автор поста оценил этот комментарий

Спасибо за Ваш отзыв! Такие комментарии очень сильно мотивируют продолжать работу над проектом)

раскрыть ветку (16)
2
Автор поста оценил этот комментарий

Знаю, поэтому и написал)

Жаль я первый пост не видел))) сэкономил бы уже часов 10-15 своей жизни 😆

раскрыть ветку (15)
0
Автор поста оценил этот комментарий

Как пользователь Excel, расскажите - может быть у Вас есть идеи о том, что еще можно было бы реализовать в надстройке? Регулярная боль с рутинными действиями, которые можно было бы автоматизировать - с пользой для Вас и многих других пользователей?

раскрыть ветку (14)
0
Автор поста оценил этот комментарий

Вы знаете, неделю не работал с excel и особо припомнить не могу, буду держать в голове.

Единственное что сразу вспомнилось, когда делал производственные таблицы с кучей объединенных ячеек, меня удручал тот факт что есть стандартная функция объединения ячеек по строкам, а по столбцам (что как раз мне было необходимо) - нет. Спасался через f4 насколько помню.

раскрыть ветку (13)
Автор поста оценил этот комментарий

Странно: вот только что проверил, какой ни выделить диапазон, функция "Merge & Center" объединит ячейки, которые выделены (по строкам, столбцам или прямоугольный диапазон)

Иллюстрация к комментарию
раскрыть ветку (12)
0
Автор поста оценил этот комментарий

можно сделать по строкам, тогда будут обтединенные строки №2,3,4,5,6...


А я например хочу сделать объединенные группы столбцов, чтобы были столбцы выделенные желтым B, C, D...


Сразу массово

Иллюстрация к комментарию
раскрыть ветку (11)
0
Автор поста оценил этот комментарий

Серым - сделал выделением и 1 нажатием.


То что желтым, попробуйте столбиков наделать, я даже продолжать не стал)))

Иллюстрация к комментарию
раскрыть ветку (10)
0
Автор поста оценил этот комментарий

https://github.com/navferty/NavfertyExcelAddIn/issues/55

Завёл тикет, следите за новостями =)

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

Я вот что еще вспомнил))) Люблю таблички педантично оформлять, и есть некий момент - Оформляю обычной рамкой все внутри и снаружи толстой (думаю как и весь люд) + внутри по блокам делю толстой обводкой.

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


Было бы заманчиво иметь сразу настройку (толстые внешние границы + все границы внутри). Может это можно стандартными методами сразу сделать чтобы была кнопка сохраненная?

Иллюстрация к комментарию
0
Автор поста оценил этот комментарий
Ого. Благодарю
0
Автор поста оценил этот комментарий

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

раскрыть ветку (6)
1
Автор поста оценил этот комментарий

добрый вечер, установил надстройку "20200603.19 Azure pipelines: upload installation files to website (#54)". При подсвечивании дубликатов выдает ошибку "произошла ошибка ссылка на объект не указывает"

Иллюстрация к комментарию
раскрыть ветку (5)
0
Автор поста оценил этот комментарий

Среди реализованных функций есть подсветка дублей, она описана в этой статье. Или Вы имеете в виду нечто иное?

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

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества