Обновить
5

Visual Basic for Applications *

Visual Basic для автоматизации в приложениях

Сначала показывать
Порог рейтинга
Уровень сложности

Инструменты для работы с макросами VBA в «Офис+ Стандартный»

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров579

Предыдущая статья Практическое применение VBA макросов в «Офис+ Стандартный» вызвала много вопросов, о возможности вести разработку или модификацию макросов VBA, особенно под Linux. Поэтому чтобы прояснить ситуацию, я решил сделать обзор инструментов доступных пользователю при использовании данного ПО. Надеюсь мне удастся закрыть эту тему данным обзором.

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

Читать далее

Новости

Практическое применение VBA макросов в «Офис+ Стандартный»

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.6K

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

Рассмотрим практический пример использование макросов VBA в повседневной работе предприятия для взаимодействия с БАНКОМ. Обработка макросов VBA будем производить в редакторе «Офис+ Таблицы», производителя отечественного ПО ООО «ОФИС ПЛЮС». Файлы для подготовки данных для передачи в БАНК возьмем на сайте ПАО «ВТБ».

Читать далее

Как автоматизировать подготовку отчетности в Word: макросы на практике

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров4.3K

Всем привет! Я студент-работяга, который увлекается аналитикой в многогранном мире ИБ. Почти каждая задача (как аналитика, так и студента) так или иначе заканчивается подготовкой каких-то материалов: для аналитика — отчета, для студента — курсовой работы. В процессе подготовки этих материалов неизбежно сталкиваешься с рутиной из однообразных кликов (разметка текста, форматирование картинок и много другой скукоты). Однако справиться с ней можно, и сегодня я расскажу, как это сделать с помощью автоматизации в редакторе Word посредством VBA-макросов.

Статья может быть полезна студентам и начинающим специалистам, но уверен, какие-то идеи пригодятся и тем, кто уже работает. Даже если вы не пользуетесь Microsoft Office, то все равно сможете почерпнуть для себя некоторые идеи, так как почти во всех пакетах есть поддержка языков программирования, например Basic в LibreOffice, Lua в пакете «МойОфис» или JavaScript в «Яндекс Документах». Кроме того, часть моих скриптов я выложил в открытый доступ.

Когда пишут про автоматизацию в Microsoft Office, то в большинстве случаев имеют в виду Excel, однако я сломаю шаблон и расскажу вам про автоматизацию в Word, которую часто незаслуженно обходят стороной.

Читать далее

Чистим строку от лишних/повторяющихся пробелов (и пробельных символов) в строковых значениях компактно. RegExp

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.8K

Хочу поделиться компактной функцией для очищения лишних, повторяющихся пробелов и пробельных символов в строках. Не считайте это призывом, но если можно привести строковые данные в красивый вид без лишних хлопот, то почему бы и не воспользоваться. Те, кто не знаком с регулярными выражениями (regular expressions, RegExp, regex), может приоткроет форточку в этот славный и замороченный мир (Регулярные выражения (regexp) — основы)

Читать далее

Traceback в VBA? ЧТО?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.7K

Как часто вы ловите ошибки в VBA?
А как часто вам приходится пытаться понять откуда ноги растут?

Если макрос состоит из одной процедуры, это немного другая история...
Но вот если у вас полноценный стек вызовов, когда:

Main() -> NestedSub1 -> NestedFunc -> NestedSub2 ... -> NestedSubN

как отловить, в каком произошла ошибка?

Окей, вы скажите "Поставим On Error GoTo Catch и в Catch: Debug.Print "Function name"", да?

А если эту функцию вызывают несколько разных Sub/Function, как понять в каком из них произошла ошибка?

Читать далее

Не нажимайте эту кнопку: почему макросы Office все еще опасны

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров10K

В 1993 году вышел Excel 5.0 — первый продукт Microsoft, поддерживающий макросы на языке Visual Basic for Applications. Это событие стало настоящей революцией для офисных клерков: сотрудники, не обладавшие специальными знаниями в программировании, вдруг получили мощный инструмент для автоматизации монотонных офисных задач, которые прежде отнимали уйму времени. 

Однако макросы пришлись по душе не только работникам офисов. Всего спустя два года появился Concept — первый вирус, который эксплуатировал возможности макросов для кибератак. С тех пор макросы Microsoft Office стали излюбленным способом проникновения в корпоративную сеть у хакеров. Даже сегодня многие успешные атаки на компании начинаются с отправки фишингового письма с документом, который заражен вредоносным макросом.

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

Читать далее

Как на Excel заработать сотни миллионов? Опыт проекта RTO

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров10K

Добрый день, читатели!

С чего обычно начинаются веселые проекты? Хочу поделиться одной историей длиной в 3 года.

Читать далее

Парсинг котировок ценных бумаг в Microsoft Excel и Google Таблицы с любого сайта

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров9.2K

Хотя возможность автоматического получения котировок в «Эксель» или «Гугл Таблицы» упрощает ведение портфелей, существует несколько технических препятствий, с которыми можно столкнуться при парсинге или скрапинге (в общем виде это автоматический сбор данных из интернета, в таблицах работает через формулы или скрипты):

📍 Динамическая загрузка контента: современные веб-сайты часто используют JavaScript для загрузки текущий цен уже после первоначальной загрузки страницы. Это создает проблему для базовых методов парсинга.
📍 Ограничения API: некоторые веб-сайты и финансовые учреждения предлагают общедоступные API (например, Московская биржа или Банк России), но и они имеют свои ограничения.
📍А бывает, что можно найти АПИ, например для investing.com, но чтобы воспользоваться им потребует поиск альтернативных методов - имитация человека для того чтобы получить данные - использование автоматизации браузера.

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

Парсим 🤖

Формула прибыли: как автоматизировать расчеты юнит-экономики для тысяч товаров

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров1.7K

Многие предприниматели до конца не понимают, что такое юнит-экономика и почему её расчет так важен. Постараюсь объяснить кратко и понятно. Юнит-экономика помогает разобраться в том, из чего складывается себестоимость вашего продукта — это все затраты, которые вы несёте на каждом этапе реализации товара.

Это мой кейс, прошу не судить строго, буду рад конструктивной обратной связи))

Читать далее

Автоматизация рутинной работы в форензике: извлечение временных атрибутов файлов по списку

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров1.1K

Представьте: у вас есть несколько тысяч файлов, и для каждого нужно извлечь метаданные — даты создания, модификации и последний доступ. Можно, конечно, сидеть и вручную копировать эти данные из Проводника. Один файл, второй… Через час работы голова уже плывёт, а впереди ещё сотни файлов. Но всего этого можно избежать.

Меня зовут Максим Антипов, я кибердетектив и преподаватель в CyberEd. В этом руководстве я покажу вам, как автоматизировать процесс извлечения атрибутов файлов с помощью скрипта на VBA. Мы настроим Excel так, чтобы он сам собирал данные о размере, дате создания, модификации и последнем доступе к файлам. 

Читать далее

Как я при помощи двух «костылей» смог автоматически сгенерировать опись документов для 700 страниц

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.9K

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

Ситуацию несколько облегчает то, что на эти распечатанные документы есть исходные Excel файлы.

Автоматизируем создание описи документов🤖

Шел 2025й год… а BASIC все еще в строю. Современной автоматизации сметчика пост — КС-ки

Уровень сложностиПростой
Время на прочтение20 мин
Количество просмотров4.3K

Сейчас в программные решения, связанные с IT в строительном секторе, вливаются большие деньги. Появляются новые программные продукты на базе ERP/CRM систем, которые раньше проектировались под маркетинг и продажи, для электронного документооборота (ЭДО) инженеров (ИТР). Частью современной стратегии Заказчиков многих рангов является путь цифровизации бумажного документооборота в пользу электронного, для чего Минстрой РФ старательно разрабатывает и обязывает к внедрению новые форматы электронных файлов типовых форм документов, на база XML. В этих условиях настоящая статья посвящена стыку новых и старых технологий документооборота в строительстве, на примере формирования комплекта закрывающих финансовых документов по типовым Контрактам в Строительстве.
Читать дальше →

Создание первого макроса JavaScript для табличного редактора Р7 офис

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.8K

Продолжаем публиковать выдержки из бесплатного курса по разработке в Р7 офис

Что такое макросы?

Макросы — это набор инструкций или команд, которые выполняются автоматически. Они позволяют автоматизировать рутинные задачи и упростить работу с программами. В контексте редактора макросов в Табличном редакторе Р7-Офис, макросы предоставляют возможность автоматически выполнять повторяющиеся операции, такие как форматирование, вставка текста или изменение структуры документа.

Макросы - это так же небольшие скрипты, которые используются для облегчения повседневной работы с различными типами документов. Макросы Р7 используют синтаксис JavaScript и нотацию скриптов API Р7 Document Builder.
Есть несколько причин, по которым Р7 использует JavaScript для макросов:

Читать далее

Ближайшие события

Отличия разработки на VBA для MS Excel по сравнению JavaScript для Р7-Офис

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров6.8K

Публикуется первая глава бесплатного курса основы разработки для Р7 . Дополнительные материалы можно найти вот тут

Особенности разработки в MS Office (Excel)

Базовым средством автоматизации в офисном пакете Microsoft Office, в течение длительного времени (С 1996 года по настоящее время) является скриптовый язык VBA (VisualBasic for Application). C 2007 года VBA не лицензируется для других разработчиков. Согласно статьи в Википедии , посвященной VBA, этот язык является неким упрощенным подмножеством языка VisualBasic.

Рассмотрим некоторые особенности VBA, которые потом будут являться основой для средств автоматизации в Р7:

Читать далее

VBA+OOP: что, когда, зачем

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров4.5K

Будучи автором серии статей о полноценной объектно-ориентированной игре "Морской бой", и вообще постоянно рассуждая об ООП в VBA, я вдруг понял, что, возможно, мне не удалось внятно объяснить, когда использование ООП в VBA действительно оправдано.

ООП — это парадигма, что подразумевает определённый способ мышления о коде. Функциональное программирование (ФП) — это другая парадигма, предполагающая иной подход к коду. Процедурное программирование также является парадигмой, где код представляет собой последовательность выполняемых команд. У каждой парадигмы есть свои плюсы и минусы, своя ценность и определённые задачи, которые решаются лучше всего именно в её рамках и,... конечно же, у каждой из них есть свои преданные приверженцы, которые уверены, что их путь – единственно верный. Не верьте всему, что читаете в интернете – мыслите о парадигмах как о разных инструментах: одна из них — молоток, другая — отвертка, третья — лопата.

Не нужно становиться членом команды "Молоток!", "Отвертка!" или "Лопата!" — всё это искусственные рамки. Разные инструменты лучше всего подходят для разных задач.

Поэтому первым вопросом, который вам стоит задать себе, это…

Читать далее

Как сделать так, чтобы на последнем листе Экселя оказались не только подписи директоров, но и суммы

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров14K

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

К исполнителю, который печатает сметы они поступают в виде обычного Эксель файла, который надо просто распечатать. Чтобы не просматривать перед печатью каждый файл было решено автоматизировать процесс и как-то автоматически определять - остаются ли на последнем листе только подписанты или есть хотя бы одна цифра?

Самым простым виделось сделать это, пользуясь средствами самого Excel. Для этого подходило Visual Basic для приложений (VBA) в Office.

VBA Excel и форматирование

VBScript убирают из Windows. Но почему и зачем?

Время на прочтение4 мин
Количество просмотров18K

Корпорация Microsoft сделала интересное завяление — VBScript уберут из ОС Windows. Речь, конечно, о поддержке сценариев VBScript. Почему скриптовый язык программирования потерял актуальной для корпорации? Подробности — под катом.
Читать дальше →

Типизированные массивы должны умереть

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5K

Хаха :). Не, я серьезно. Позвольте мне объяснить.

Хорошо. Что такое типизированный массив?

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

Читать далее

VBA макросы. От бессмыслицы к осмысленному. Интерфейс

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров9.6K

В первой части, через боль и страдания, мы написала ядро – основную логику макроса.
Сегодня поработаем над пользовательским интерфейсом.

Читать далее

VBA макросы. От бессмыслицы к осмысленному. Ядро

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров15K

Наверное, пару лет назад, я бы отдал многое за подобную статью. Тогда, я рыл интернет в поисках информации о структурировании VBA проекта, но толком ничего не находил.

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

Чтиво про рефакторинг VBA кода.

Читать далее
1
23 ...