Visual Basic (VBA) или Python - какой язык выбрать для автоматизации Excel в 2023 г.?

Хотите знать все о сводных таблицах, использовать их как профессионал? Записывайтесь на наш курс по анализу данных и сводным таблицам! Подробности тут: clck.ru/34Ny5Z
Поддержать канал: donate.stream/yoomoney4100118...
Всем привет! Сегодня мы постараемся понять, стоит ли изучать Visual Basic (VBA) для автоматизации Excel в 2023 г. или лучше посмотреть в сторону более современного языка программирования, например, такого, как Python.

Пікірлер: 36

  • @analyst_klondike
    @analyst_klondike3 ай бұрын

    Друзья, смотрите мой курс Python с нуля для начинающих: kzread.info/dash/bejne/nn9mraOAf7a1mZM.html Подписывайтесь на телеграм-канал: t.me/analyst_klondike

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov7 ай бұрын

    Благодарю! Подписка, лайк 👍🔥

  • @AwolGame
    @AwolGame Жыл бұрын

    Жду видео, с примерами работы пайтона и экскеля, очень хочется изучить и понять, в каких случаях можно применять

  • @darkknight8287
    @darkknight8287 Жыл бұрын

    Спасибо

  • @vladig6649
    @vladig66498 ай бұрын

    Visual Basic for Applications (VBA) это по сути язык программирования Visual Basic (VB) предназначенный для программирования внутри приложений входящих в пакет MS Office с целью разработки на базе их пользовательских приложений. Обьектные СОМ - модели офисных приложений и модели доступа к базам данных на MS Access и MS SQL имеют в своей основе API в синтаксисе VB (VBA). Из любого другого ЯП, работающиего с СОМ-компонентами, можно также успешно работать изнутри с приложениями MS Office. Принципиальным является то, что VBA концептуально интегрирован в MS Office и саму Windows. Существенным преимуществом языка программирования Visual Basic и VBA является их простота, которой обеспечивается ясность и читабельность написанного кода, особенно необходимых для его дальнейшей поддержки.

  • @analyst_klondike

    @analyst_klondike

    8 ай бұрын

    Да, вы правы, спасибо за такой развернутый комментарий.

  • @vladig6649

    @vladig6649

    8 ай бұрын

    @@analyst_klondike Да, и чтобы начать изучение VBA и разработку на нем приложений, то логичнее будет начать с самого Visual Basic, например, его последней редакции VB6. На практике освоить разработку простых форм с контролами (controls), которые все присутствуют и в VBA, освоить разработку СОМ-компонентов в формате dll-файлов, которые можно будет использовать в своих VBA-приложениях. А если посмотреть на MS Office в целом, то его общая концептуальность, архитектура объектных моделей входящих приложений, простой но функционально мощный язык программирования VBA, компоненты доступа к данным - все это продумано и сделано на высочайшем уровне, если не сказать гениально.

  • @menestrier7474

    @menestrier7474

    2 ай бұрын

    @@vladig6649 Не совсем, начинать лучше с VBA.... Литература свежее, и материалы... а также VB6 развернули вокруг VBA.... Более того ЯП вообще-то развивается, как VB6, так и VBA, и их можно смело назвать полукомпилируемым или полуинтерпретируемым... Но это так мысли в слух, на счет интерфейса тоже не правда, есть дополнение, которое меняет стандартный интерфейс редактора VBA и добавляет некоторые возможности, его и искала... забыла, как называется... потеряла после переустановки ОС... Проблемы вовсе не в развитии, оно идет хоть и не от Microsoft проблема в переходе на облачные сервисы и сетевые технологии... Тут уже JS или Python....

  • @user-iv1ys3uo9e

    @user-iv1ys3uo9e

    24 күн бұрын

    Совершенно верно. Я когда начал применять Еxcel и изучать vba для автоматизации своих инженерных задач я офигел от того какие вещи в нем можно делать, а макроредактор это вообще ключ успеха для новичка.

  • @vladig6649

    @vladig6649

    24 күн бұрын

    ​@@user-iv1ys3uo9e Одни из лучших, на мой взгляд, учебников для изучения программирования на VBA являются книги Владимира Биллига "Программирование на VBA в MS Office".

  • @TheNinesku
    @TheNinesku7 ай бұрын

    Однозначно надо и то и другое

  • @yurafedchenko2733
    @yurafedchenko273311 ай бұрын

    4:26 - проблему переноса программы на python-е можно было бы нивелировать формированием exe - файла, однако лишь для программы единоразового использования это имеет мало смысла.

  • @AndreyDelay
    @AndreyDelay Жыл бұрын

    Использую VBA так как очень часто задачи прилетают от коллег и руководства, в формате решил -> отдал в использование. Так же внедряются инструменты в книги подконтрольным организациям, и python есть только у пары человек из всех с кем взаимодействую. А 90% ПК задушены безопасниками, я сам программирую на Java , так что даже её не установить никак …

  • @vladig6649

    @vladig6649

    8 ай бұрын

    VBA концептуально интегрирован в пакет MS Office как инструмент программирования внутри входящих в него приложений. Так сложилось исторически. Принципиальным моментом является простота VBA имеющего в своей основе Visual Basic, которой обеспечивается ясность и читабельность программного кода особенно для его дальнейшей поддержки.

  • @user-sw9mx7ow7s
    @user-sw9mx7ow7s Жыл бұрын

    Спасибо. Подскажите где скачать англо-русский словарь для VBS?

  • @user-sw9mx7ow7s

    @user-sw9mx7ow7s

    Жыл бұрын

    Vba

  • @denis27054
    @denis27054Ай бұрын

    VBA использую для решения задач "здесь и сейчас". Настолько обленился, что мне проще накидать несколько строк кода чем погружаться в изучение функций еxcel.

  • @analyst_klondike

    @analyst_klondike

    Ай бұрын

    По всей видимости, вы весьма продвинутый пользователь Excel, коли пишете код на VBA даже если аналогичный функционал уже есть в Excel "из коробки"

  • @denis27054

    @denis27054

    Ай бұрын

    @@analyst_klondike Я не считаю себя продвинутым пользователем, несмотря на то что знаком с ним больше 20 лет. Даже сейчас я не могу сказать что знаю его возможности хотя бы на 50%. В основном использую vba для работы с логами программ - таблицы с десятками тысяч текстовых строк, ищу иголки в стоге сена. Excel в связке с VBA весьма мощный инструмент, жаль что большинство использует его для рисования таблиц.

  • @weters1990
    @weters199011 ай бұрын

    Vba используется не только в ексель ... Имеет свои библиотеки которые взаимодействуют со сторонними офисными продуктами (аксес, ворд, поверпоинт... др.) и не офисными программами (автокад... др.)... Также обращается к windows . Создает папки, файлы , открывает сторонние приложения, выключает процессы... Пайтон нужно учить только для красивой визуализации рабочей формы приложения ... Такое себе ... Для офисного рабочего это далеко не важно

  • @zsnjA
    @zsnjA Жыл бұрын

    Запилили полноценные шарпы вместо vba в excel, все бы кайфовали

  • @analyst_klondike

    @analyst_klondike

    Жыл бұрын

    Да, многие об этом мечтают, но, боюсь, не запилят. На VBA написано много кода и его нельзя просто так взять и бросить.

  • @vladig6649

    @vladig6649

    7 ай бұрын

    А лучше С++ или какую-нибудь Java и тп. Просто смешно. VBA концептуально интегрирован во все приложения MS Office как основной и достаточно простой инструмент разработки. Внутри этих приложений можно работать и на другом ЯП, если он через ActiveX и СОМ-компоненты способен работать с их объектыми моделями.

  • @yuliyi

    @yuliyi

    3 ай бұрын

    Если бы там были шарпы я бы и весь наш офис инженеров МЕХАНИКОВ ( не программистов ) плакали бы горькими слезами

  • @prymotuda9783
    @prymotuda97839 ай бұрын

    Учитывая новости, что Microsoft интегрирует поддержку Python в Excel то плюсы и минусы изменятся

  • @vladig6649

    @vladig6649

    8 ай бұрын

    Если ЯП Python поддерживает работу с COM-компонентами, на которых построены объектные модели всех приложений пакета MS Office, то на нем можно с успехом работать с этими моделями. Но лучше из VBA запускать модули (приложения) написанные на самом Python'e. Хотя все можно проще сделать на самом VBA.

  • @simplyx1489
    @simplyx1489 Жыл бұрын

    Наверное питон ещё хорош тем, что он есть в Power BI, который велючает и каери и пивот, но получше, свежее

  • @user-ou7fw1sg1r
    @user-ou7fw1sg1r11 күн бұрын

    Выбирай оба... Как я)))

  • @analyst_klondike

    @analyst_klondike

    11 күн бұрын

    Отличный выбор!

  • @user-qh5fr3yo1w
    @user-qh5fr3yo1wАй бұрын

    То есть для простых задач VBA вполне подойдёт. Я только начал изучать Excel. Значит VBA самое то.

  • @analyst_klondike

    @analyst_klondike

    Ай бұрын

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

  • @tamikdgioev7031
    @tamikdgioev7031 Жыл бұрын

    Vba для Exsel, все же более предпочтительный, хотя книги и исходники по нему исчезают, Python все же лучше для Liber office VBA есть не только в Excel и в Office... как и Python, и что бы понадобился Python наверное масштаб данных должен выйти за рамки Excel или вообще одного ПК, с другой стороны в новых версиях на сколько знаю планировать использовать javascript...

  • @vladig6649

    @vladig6649

    8 ай бұрын

    Visual Basic for Applications (VBA) это по сути язык программирования Visual Basic (VB) предназначенный для программирования внутри приложений входящих в пакет MS Office с целью разработки на базе их пользовательских приложений. Обьектные СОМ - модели офисных приложений и модели доступа к базам данных на MS Access и MS SQL имеют в своей основе API в синтаксисе VB (VBA). Из любого другого ЯП, работающиего с СОМ-компонентами, можно также успешно работать изнутри с приложениями MS Office. Принципиальным является то, что VBA концептуально интегрирован в MS Office и саму Windows. Существенным преимуществом языка программирования Visual Basic и VBA является их простота, которой обеспечивается ясность и читабельность написанного кода, особенно необходимых для его дальнейшей поддержки.

  • @tamikdgioev7031

    @tamikdgioev7031

    8 ай бұрын

    ​@@vladig6649 Так и есть, VB для меня никогда не был учебным ЯП, а скорее языком для офисного программирования, и администрирования. Но интегрирован он не только в офис, а где-то в 14 приложений включая WPS Office до 2016 года, можно вроде установить полноценный VBA -7 отдельно, часть которых в новых версиях в принципе поддерживает и Python. Но учитывая что web занимает все больше JS, а разработка развивается в сторону облачных сервисов, скорее всего именно JS займет эту нишу, об это были и слухи в сети, и это видим и в Google docs... И так же JS есть в Libre Office... И есть так же нюансы, в какой-то мере JS и Python сегодня чуть легче выучить, я на пример выбросил книгу Брауна да там есть что взять, но много воды - много плохого перевода. Если и брать эту книгу, то хотя бы оригинал, и информации что в ней принципе не хватит и еще что бы по ней нормально изучить ЯП нужно куда-то установить Win 95 или хотя бы ХР, а учебного материала осталось не много, и что бы разобраться в VBA придется записывать кучу макросов, и после разбираться в коде и реально искать информацию на зарубежных сайтах. Так же IDE 6-й версии построили вокруг VBA, а не VBA из него взяли... И еще интерфейс VBA можно поменять плагинами и сделать более современным duck или duck - duck называется - забыл, хоть и с VBA лучше не злоупотреблять плагинами особенно если макросы или код нужно отправлять куда-то еще, но этот думаю можно использовать, и в принципе с первыми двумя недостатками явно не все так плохо, и с 3 так же, ну от части мало виджетов, от части их можно создать, а от части требуется и не так много, что-то такое есть и для VB... Но уже едва ли найдется в сети, и в принципе не требуется... И по версии 6.0 ничего лишнего написать или ляпнуть не хочу это мой родной ЯП, и дела у ЯП куда лучше, чем принято считать в сети... И альтернатив много, хотя бы те же PoSh и Winform, AutoIT и другие. Так что свое оставлю при себе.

Келесі