Друзья, смотрите мой курс Python с нуля для начинающих: th-cam.com/video/lK2KAGOSOi0/w-d-xo.html Подписывайтесь на телеграм-канал: t.me/analyst_klondike
Мне на работе была поставлена задача обработки типизированных таблиц Excel. Плюс интерфейс пользователя плюс защита от дурака плюс сохдание отчетов в формате Word. Сначала провозился неделю с Python. И вдруг внезапно оказалось, что с наименьшими затратами времени и усилий эта задача выполняется в Lazarus. Интерфейс строится простым перетаскиванием компонентов на форму и прописыванием свойств, все необходимые компоненты дозагружаются из репозиториев, хорошая вики-документация, остается сосредоточиться исключительно на математике. Первая задача была решена за 5 дней, последующих время сократилось в 2 раза. Никого не агитирую, это чисто личное. Хочу лишь сказать, что нет лучших и худших ЯП, есть оптимальные под конкретные задачи.
@@analyst_klondike нежелание писать интерфейс ручками. Да и не устаревшая технология. Вполне отлично поддерживает GTK и Qt. В отличие от Python создаёт исполняемый бинарник. Паскаль - строго типизированный ЯП (в Питоне с одними переменными такого можно намутить, что потом фиг разберёшь). Область применения довольно узкая, согласен. Но для многих текущих задач даст фору другим ЯП. Я не агитирую. Мне просто все равно на чем писать, я для определенных задач выбираю наиболее удобный для себя инструмент. Кому-то удобней пользоваться Питоном. Я просто не люблю интерпретаторы. Да и синтаксис мне не нравится. Но это, опять же, личное.
VBA использую для решения задач "здесь и сейчас". Настолько обленился, что мне проще накидать несколько строк кода чем погружаться в изучение функций еxcel.
@@analyst_klondike Я не считаю себя продвинутым пользователем, несмотря на то что знаком с ним больше 20 лет. Даже сейчас я не могу сказать что знаю его возможности хотя бы на 50%. В основном использую vba для работы с логами программ - таблицы с десятками тысяч текстовых строк, ищу иголки в стоге сена. Excel в связке с VBA весьма мощный инструмент, жаль что большинство использует его для рисования таблиц.
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 Да, и чтобы начать изучение VBA и разработку на нем приложений, то логичнее будет начать с самого Visual Basic, например, его последней редакции VB6. На практике освоить разработку простых форм с контролами (controls), которые все присутствуют и в VBA, освоить разработку СОМ-компонентов в формате dll-файлов, которые можно будет использовать в своих VBA-приложениях. А если посмотреть на MS Office в целом, то его общая концептуальность, архитектура объектных моделей входящих приложений, простой но функционально мощный язык программирования VBA, компоненты доступа к данным - все это продумано и сделано на высочайшем уровне, если не сказать гениально.
@@vladig6649 Не совсем, начинать лучше с VBA.... Литература свежее, и материалы... а также VB6 развернули вокруг VBA.... Более того ЯП вообще-то развивается, как VB6, так и VBA, и их можно смело назвать полукомпилируемым или полуинтерпретируемым... Но это так мысли в слух, на счет интерфейса тоже не правда, есть дополнение, которое меняет стандартный интерфейс редактора VBA и добавляет некоторые возможности, его и искала... забыла, как называется... потеряла после переустановки ОС... Проблемы вовсе не в развитии, оно идет хоть и не от Microsoft проблема в переходе на облачные сервисы и сетевые технологии... Тут уже JS или Python....
Совершенно верно. Я когда начал применять Еxcel и изучать vba для автоматизации своих инженерных задач я офигел от того какие вещи в нем можно делать, а макроредактор это вообще ключ успеха для новичка.
@@techmashtlt Одни из лучших, на мой взгляд, учебников для изучения программирования на VBA являются книги Владимира Биллига "Программирование на VBA в MS Office".
Использую VBA так как очень часто задачи прилетают от коллег и руководства, в формате решил -> отдал в использование. Так же внедряются инструменты в книги подконтрольным организациям, и python есть только у пары человек из всех с кем взаимодействую. А 90% ПК задушены безопасниками, я сам программирую на Java , так что даже её не установить никак …
VBA концептуально интегрирован в пакет MS Office как инструмент программирования внутри входящих в него приложений. Так сложилось исторически. Принципиальным моментом является простота VBA имеющего в своей основе Visual Basic, которой обеспечивается ясность и читабельность программного кода особенно для его дальнейшей поддержки.
4:26 - проблему переноса программы на python-е можно было бы нивелировать формированием exe - файла, однако лишь для программы единоразового использования это имеет мало смысла.
Vba используется не только в ексель ... Имеет свои библиотеки которые взаимодействуют со сторонними офисными продуктами (аксес, ворд, поверпоинт... др.) и не офисными программами (автокад... др.)... Также обращается к windows . Создает папки, файлы , открывает сторонние приложения, выключает процессы... Пайтон нужно учить только для красивой визуализации рабочей формы приложения ... Такое себе ... Для офисного рабочего это далеко не важно
Можно и сложные решать, зависит от вашего желания погружаться в VBA. Кстати, в телеграм-канале есть пост с картой обучения VBA - какие видео смотреть, в каком порядке и для каких целей
@@analyst_klondike если они в 25 ms office lts таки реализуют поддержку python, будет отлично) про vba не скажу ничего плохого, кроме того, что он уже давно перестал развиваться, в перспективе его внедрение в свой какой то проект бессмысленно
Конечно! На канале есть полный курс VBA c нуля. Также, в телеграм-канале есть посты с программой обучения VBA: что изучать и в какой последовательности. Ссылка на курс: t.me/analyst_klondike/18
Если ЯП Python поддерживает работу с COM-компонентами, на которых построены объектные модели всех приложений пакета MS Office, то на нем можно с успехом работать с этими моделями. Но лучше из VBA запускать модули (приложения) написанные на самом Python'e. Хотя все можно проще сделать на самом VBA.
А лучше С++ или какую-нибудь Java и тп. Просто смешно. VBA концептуально интегрирован во все приложения MS Office как основной и достаточно простой инструмент разработки. Внутри этих приложений можно работать и на другом ЯП, если он через ActiveX и СОМ-компоненты способен работать с их объектыми моделями.
Vba для Exsel, все же более предпочтительный, хотя книги и исходники по нему исчезают, Python все же лучше для Liber office VBA есть не только в Excel и в Office... как и Python, и что бы понадобился Python наверное масштаб данных должен выйти за рамки Excel или вообще одного ПК, с другой стороны в новых версиях на сколько знаю планировать использовать javascript...
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 является их простота, которой обеспечивается ясность и читабельность написанного кода, особенно необходимых для его дальнейшей поддержки.
@@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 и другие. Так что свое оставлю при себе.
Друзья, смотрите мой курс Python с нуля для начинающих:
th-cam.com/video/lK2KAGOSOi0/w-d-xo.html
Подписывайтесь на телеграм-канал:
t.me/analyst_klondike
Мне на работе была поставлена задача обработки типизированных таблиц Excel. Плюс интерфейс пользователя плюс защита от дурака плюс сохдание отчетов в формате Word. Сначала провозился неделю с Python. И вдруг внезапно оказалось, что с наименьшими затратами времени и усилий эта задача выполняется в Lazarus. Интерфейс строится простым перетаскиванием компонентов на форму и прописыванием свойств, все необходимые компоненты дозагружаются из репозиториев, хорошая вики-документация, остается сосредоточиться исключительно на математике. Первая задача была решена за 5 дней, последующих время сократилось в 2 раза. Никого не агитирую, это чисто личное. Хочу лишь сказать, что нет лучших и худших ЯП, есть оптимальные под конкретные задачи.
А что за такая система, Lazarus? Никогда не слышал
@@analyst_klondike ru.wikipedia.org/wiki/Lazarus
@@analyst_klondike ru.wikipedia.org/wiki/Lazarus
@@EvilTroll-m4b Видится, что это устаревшая технология. А в чем проблема была сделать это на Python?
@@analyst_klondike нежелание писать интерфейс ручками. Да и не устаревшая технология. Вполне отлично поддерживает GTK и Qt. В отличие от Python создаёт исполняемый бинарник. Паскаль - строго типизированный ЯП (в Питоне с одними переменными такого можно намутить, что потом фиг разберёшь). Область применения довольно узкая, согласен. Но для многих текущих задач даст фору другим ЯП. Я не агитирую. Мне просто все равно на чем писать, я для определенных задач выбираю наиболее удобный для себя инструмент. Кому-то удобней пользоваться Питоном. Я просто не люблю интерпретаторы. Да и синтаксис мне не нравится. Но это, опять же, личное.
VBA использую для решения задач "здесь и сейчас". Настолько обленился, что мне проще накидать несколько строк кода чем погружаться в изучение функций еxcel.
По всей видимости, вы весьма продвинутый пользователь Excel, коли пишете код на VBA даже если аналогичный функционал уже есть в Excel "из коробки"
@@analyst_klondike Я не считаю себя продвинутым пользователем, несмотря на то что знаком с ним больше 20 лет. Даже сейчас я не могу сказать что знаю его возможности хотя бы на 50%. В основном использую vba для работы с логами программ - таблицы с десятками тысяч текстовых строк, ищу иголки в стоге сена. Excel в связке с VBA весьма мощный инструмент, жаль что большинство использует его для рисования таблиц.
Жду видео, с примерами работы пайтона и экскеля, очень хочется изучить и понять, в каких случаях можно применять
Благодарю! Подписка, лайк 👍🔥
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 Да, и чтобы начать изучение VBA и разработку на нем приложений, то логичнее будет начать с самого Visual Basic, например, его последней редакции VB6. На практике освоить разработку простых форм с контролами (controls), которые все присутствуют и в VBA, освоить разработку СОМ-компонентов в формате dll-файлов, которые можно будет использовать в своих VBA-приложениях.
А если посмотреть на MS Office в целом, то его общая концептуальность, архитектура объектных моделей входящих приложений, простой но функционально мощный язык программирования VBA, компоненты доступа к данным - все это продумано и сделано на высочайшем уровне, если не сказать гениально.
@@vladig6649 Не совсем, начинать лучше с VBA.... Литература свежее, и материалы... а также VB6 развернули вокруг VBA.... Более того ЯП вообще-то развивается, как VB6, так и VBA, и их можно смело назвать полукомпилируемым или полуинтерпретируемым... Но это так мысли в слух, на счет интерфейса тоже не правда, есть дополнение, которое меняет стандартный интерфейс редактора VBA и добавляет некоторые возможности, его и искала... забыла, как называется... потеряла после переустановки ОС... Проблемы вовсе не в развитии, оно идет хоть и не от Microsoft проблема в переходе на облачные сервисы и сетевые технологии... Тут уже JS или Python....
Совершенно верно. Я когда начал применять Еxcel и изучать vba для автоматизации своих инженерных задач я офигел от того какие вещи в нем можно делать, а макроредактор это вообще ключ успеха для новичка.
@@techmashtlt Одни из лучших, на мой взгляд, учебников для изучения программирования на VBA являются книги Владимира Биллига "Программирование на VBA в MS Office".
Использую VBA так как очень часто задачи прилетают от коллег и руководства, в формате решил -> отдал в использование.
Так же внедряются инструменты в книги подконтрольным организациям, и python есть только у пары человек из всех с кем взаимодействую. А 90% ПК задушены безопасниками, я сам программирую на Java , так что даже её не установить никак …
VBA концептуально интегрирован в пакет MS Office как инструмент программирования внутри входящих в него приложений. Так сложилось исторически. Принципиальным моментом является простота VBA имеющего в своей основе Visual Basic, которой обеспечивается ясность и читабельность программного кода особенно для его дальнейшей поддержки.
4:26 - проблему переноса программы на python-е можно было бы нивелировать формированием exe - файла, однако лишь для программы единоразового использования это имеет мало смысла.
Однозначно надо и то и другое
Vba используется не только в ексель ... Имеет свои библиотеки которые взаимодействуют со сторонними офисными продуктами (аксес, ворд, поверпоинт... др.) и не офисными программами (автокад... др.)... Также обращается к windows . Создает папки, файлы , открывает сторонние приложения, выключает процессы...
Пайтон нужно учить только для красивой визуализации рабочей формы приложения ... Такое себе ... Для офисного рабочего это далеко не важно
То есть для простых задач VBA вполне подойдёт. Я только начал изучать Excel. Значит VBA самое то.
Можно и сложные решать, зависит от вашего желания погружаться в VBA. Кстати, в телеграм-канале есть пост с картой обучения VBA - какие видео смотреть, в каком порядке и для каких целей
Спасибо
для python в ms 365 есть оф. поддержка, а для js есть официальное api уже очень давно
Да, Excel развивается в правильном направлении. По вашему, такая реализация Python в Excel лучше VBA?
@@analyst_klondike если они в 25 ms office lts таки реализуют поддержку python, будет отлично) про vba не скажу ничего плохого, кроме того, что он уже давно перестал развиваться, в перспективе его внедрение в свой какой то проект бессмысленно
Спасибо. Подскажите где скачать англо-русский словарь для VBS?
Vba
А есть курс хороший по VBA ?
Конечно! На канале есть полный курс VBA c нуля. Также, в телеграм-канале есть посты с программой обучения VBA: что изучать и в какой последовательности. Ссылка на курс: t.me/analyst_klondike/18
Учитывая новости, что Microsoft интегрирует поддержку Python в Excel то плюсы и минусы изменятся
Если ЯП Python поддерживает работу с COM-компонентами, на которых построены объектные модели всех приложений пакета MS Office, то на нем можно с успехом работать с этими моделями. Но лучше из VBA запускать модули (приложения) написанные на самом Python'e. Хотя все можно проще сделать на самом VBA.
Запилили полноценные шарпы вместо vba в excel, все бы кайфовали
Да, многие об этом мечтают, но, боюсь, не запилят. На VBA написано много кода и его нельзя просто так взять и бросить.
А лучше С++ или какую-нибудь Java и тп. Просто смешно.
VBA концептуально интегрирован во все приложения MS Office как основной и достаточно простой инструмент разработки. Внутри этих приложений можно работать и на другом ЯП, если он через ActiveX и СОМ-компоненты способен работать с их объектыми моделями.
Если бы там были шарпы я бы и весь наш офис инженеров МЕХАНИКОВ ( не программистов ) плакали бы горькими слезами
Наверное питон ещё хорош тем, что он есть в Power BI, который велючает и каери и пивот, но получше, свежее
Выбирай оба... Как я)))
Отличный выбор!
Vba для Exsel, все же более предпочтительный, хотя книги и исходники по нему исчезают, Python все же лучше для Liber office VBA есть не только в Excel и в Office... как и Python, и что бы понадобился Python наверное масштаб данных должен выйти за рамки Excel или вообще одного ПК, с другой стороны в новых версиях на сколько знаю планировать использовать javascript...
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 является их простота, которой обеспечивается ясность и читабельность написанного кода, особенно необходимых для его дальнейшей поддержки.
@@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 и другие. Так что свое оставлю при себе.
Петухон вообще не предназначен для нормальной работы в эксель.
Не факт, в ряде задач Python отрабатывает значительно лучше VBA