Программирование макросов на VBA в Excel
Что такое макросы, как их создавать и использовать. Для "простых смертных" пользователей, НЕ-программистов. Более подробно тут planetaexcel.ru/techniques/3/59/
Заходите в гости ↓↓↓
Twitter / planeta_excel
Facebook / planetaexcel
Instagram / planetaexcel
Мои книги planetaexcel.ru/books/
Моя надстройка PLEX (+150 новых функций для вашего Excel) planetaexcel.ru/plex/
Пікірлер: 166
Парень грамотный и толковый! Все очень понятно! СПАСИБО ТЕБЕ БОЛЬШОЕ!
@smotriipwtv7920
3 жыл бұрын
угу, токмо ентно не "парень" (грамотный/толковый) это ведущий русскоязычный бизнес-тренер по направлению Excel! (так, к сведенью...)
@nelsonbodie1803
2 жыл бұрын
instablaster...
Огромная Вам благодарность, за сайт, уроки, советы! Удивительно, что правительство декларирует идеи по повышению производительности труда, но курсы по Excel я почему-то в перечне по повышению квалификации ни разу не встречал. По умолчанию, что ли топ-менеджеры, считают, что базовые инструменты MS Office каждый школьник знает и дальше углубляться нет смысла... покупают нам различные ПО, которые легко мог бы Excel с правильной базой данных заменить... Раньше отчет чуть ли не неделю делался, хотя и ВПР знал)) После Ваших видео-уроков и небольшой подготовки удалось сделать "шаблоны" и отчет улетаем по нажатию одной кнопки, только итоги сверяем для самоуспокоения))
Как все понятно. Супер! Когда знаешь, все просто!))
спасибо огромное побольше б таких уроков от вас, это очень нужная помощь))) для простых экономистов как я...
Спасибо за видео. Все с чувством, с толком, с расстановкой... Для новичков ваше видео - находка. Это действительно обучение, а не рассказ о том "какой я крутой спец, и как много я всего знаю". Материал излагается доступно и четко. Спасибо.
Спасибо огромнейшее за такой полезный материал! Пожалуйста выкладывайте уроки по программированию в VBA
Отличная работа! Как раз планировал изучить vba, но не знал с чего начать. Но теперь все более менее стало понятным. Спасибо
Какой Вы молодец!!! Спасибо! Очень доступно и так помогает в работе.
Спасибо! Отличное видео, все четко и понятно.
Спасибо Николай очень доходчиво и интересно, теперь надо искать книгу по программированию на VBA так как на работе без макросов никуда
Бомба! Спасибо! Делайте еще такие видео!
Спасибо за видео! С учетом Ваших курсов в центре мастеров видео являются отличным подспорьем в освоении экселя :)
очень хорошие уроки, коротко, наглядно и понятно
Спасибо за подробное объяснение. Видео очень полезное.
Супер! Спасибо! Перестал бояться макросов!))
Спасибо чувак, емко, понятно без воды
Спасибо большое за прекрасное видео и книгу! Реально очень помогли!
Поставил лайк, очень не хватает в повседневной работе знаний как у автора ролика. Ах если бы я также мог, уже сделал бы несколько кнопок - сделать хорошо 😁. Автору удачи! Буду смотреть канал периодически.
Молодец, спасибо!!! ПРОСИМ МАСТЕР КЛАСС!
Спасибо огромное за Ваш труд!👍
Больше спасибо за выпуск.
Не знаю, что бы я делал без VBA! Выручает с 2003-го года по сей день!
И это говорит человек с суперменом на аватарке? Где вы видите тут понты? Редактор Visual Basic и сам язык программирования не локализуются Microsoft'ом на русский уже лет 15. Хотите программировать - учите английский (хотя бы технический).
@petr717.
3 жыл бұрын
Уважаемый автор помогите пожалуйста разобраться с одной проблемой
Урок просто супер, очень помогло) теперь я много чего в работе упростить смогу СПАСИБО)
Спасибо огромное, очень помогли с домашней работой в универе
Николай! С учётом моего трепетного отношения к табличной программке позвольте выразить Вам глубочайших симпатий и просьб "выкладываться" в русле ликбезов по пользовательским вопросам в Excel. Прежде я думала, что умею.. Оказалось, мне ещё учится и учиться! Что делать у Вас очень приятно: просто, внятно, доходчиво. Спасибо, и не оставляйте поклонников "табличек" и Вас лично без Вашего внимания!
Спасибо большое за понятное объяснение макросов
Спасибо большое! Ваш урок очень помог нам!
Супер! Про udf не знал, как раз что мне надо
Спасибо! Всё очень доступно!
Большое спасибо Никола!
Очень хорошее объяснение!
*Потрясающе!*
Спасибо!!!Просто класс
Хорошее видео,много информации о богине царства мертвых из скандинавской мифологии,все по полочкам и захватывающе,прямо как я и искал)))
Всё чётко и ясно.
Спасибо за видео
Спасибо! Помогло!)
Спасибо! Очень хороший материал.
@nozimayakubova9933
5 жыл бұрын
Восхищаюсь Вами и благодарю за ценные знания, которыми делитесь. Excel это круто!
Да спасибо, большое, я к вам на сайт.
Можно попросить вас рассказать и показать попроще о создании сайта на основе обновляемых данных файла (можно дашборда) Excel-какие есть варианты таблиц на сайтах и как потом "эксплуатировать" сайт, модерировать комменты и что-то еще, сколько времени, людей и денег может на это уйти. Можно рассмотреть сайт продаж авто по годам и странам (страна-страница). Также интересно можно ли сделать кнопки-крестики для группировки строк-столбцов в таблице сайта. Удачи и спасибо за видео!!!!!
За видео, спасибо!
Большое спасибо!
Спасибо за видео))
Вот почему когда видишь хорошее видео, которое снято и прокоментировано очень грамотно, все равно находится несколько тупых оленей которые ставят под видео "не понравилось"?
@planetaexcel
8 жыл бұрын
+Же нек Да бросьте :) Если бы все только лайкали - я бы напрягся, что что-то не то делаю :)
@user-fw6zt4uc1u
6 жыл бұрын
Я лайк поставил) урок по XL показался полезным. Но НДС Вы считать не умеете. По вашей формуле у людей расплодится много неправильных расчетов. Верный расчет выглядит так: сумма/118*18=НДС. А по вашей формуле высчитывают подоходный налог или налог на прибыль. Уточните у бухгалтера, он вам это объяснит. Было время когда я тоже как Вы НДС считал).
@dmitrii9416
5 жыл бұрын
Наверное потому что, то что описано 1. иногда рассказывает долго и нудно 2.не работает!! И это очень частая ошибка. Даже я сейчас сделал всё как показано и в моих файлах ексель не воспроизводится работа макроса. А делать видео только для определённой версии ПО которая стоит только у одного человека не имеет смысла.
@Locomotiv23530
3 жыл бұрын
@@user-fw6zt4uc1u Не совсем правильно. В примере Николая изначально сумма без НДС. Поэтому НДС рассчитана правильно. В вашем же примере, я так понял что сумма уже с НДС, поэтому ваша формула как раз для такого случая. Ну для тех кто сейчас читает, НДС уже 20%, поэтому формулу можно переделать: (сумма/120)*20=сумма/6) или сумма *1,16(6)
@user-fw6zt4uc1u
3 жыл бұрын
@@Locomotiv23530 так можно сказать, если пытаться его оправдать). Но в таком случае зачем вообще нужна его формула со всеми кудрями?))) Какую пользу она может принести, если еще и сумму с НДС нужно будет посчитать? В таком порядке ни кто их не считает. Посмотрите повнимательнее - 12.05 Он грамотный парень, но не в бухгалтерии. Тот кто умеет считать НДС никогда такой вид подсчета не предложит.
Пацаны ваще ребята, четко
Спасибо!
Благодарю!
Николай. Несколько вопросов к вам. 1) Может ли макрос выполняться автоматически при заполнении какой-то определенной ячейки? 2) может ли этот же макрос выполнять какие-то построения именно объектами (круг, прямоугольник, стрелочка) в слое рисования ? Спасибо..
Добрый день, спасибо за полезное и позновательное видео. Подскажите, как написать макрос, чтобы в определенном диапазоне ячеек срабатывала формула впр?
Николай спасибо, давно искал такой простой макрос для редактирования ячеек. Обычно я фиксировано задавал диапазон ячеек в коде макроса, но это неудобно, так как адреса ячеек могут измениться, если добавить новые строки или столбцы.
Николай, есть резон еще начинать учиться макросам в екселе или уже на что-то более модное переходить?
Класс!!!
Порекомендуйте пожалуйста книгу по VBA. Спасибо вам за ролик.
Николай, а будет ваша книга по VBA? Очень хочется!
Когда знаешь - все просто!
Здравствуйте Николай. У Вас очень понятливый речь. Приятно смотреть на Ваши видео. Объясните пожалуйста: Какая разница между вычислениями с помощю Vba(makros) и Функций? Разница между ними в скорости вычислений или на размере файла? Какие преимущества того или иного?
@planetaexcel
4 жыл бұрын
На размер файла это влияет слабо, а вот скорость вычислений у встроенных функций обычно сильно быстрее VBA.
большое спасибо
Николай, какую бы вы книгу посоветовали бы для освоения макросов (языка написания макроса)
@planetaexcel
8 жыл бұрын
+Konstantin S Джон Уокенбах "Программирование на VBA в Excel"
@user-sq4np9xj8r
4 жыл бұрын
@@planetaexcel а для опен офис?
Макросов бояться не перестал, но рвения поприбавилось :) Пойду пытаться писать код для замены текста на значения (из SAP абсолютно все данные видятся экселем как текст. Просто сменить формат не работает, нужно обязательно зайти в каждую ячейку после изменения формата и сделать F2, enter. Или на выпадающую подсказку в виде ромбика нажать и выбрать "заменить все на значения"). При книгах с 50-100 тыс. строк это делается стандартными средствами Excel очень медленно. Хочется большего :)
@43sferam
9 жыл бұрын
Вы лучше своим SAP разработчикам поставьте задачу, чтобы выгружались правильные форматы данных, теоретически это дело 5 минут, как на практике, не знаю.
@PavelAnatolich
9 жыл бұрын
Иван (Владимирович), фишка в том, что наши "разработчики" - это наемные подрядчики. Для каждой запятой и т.п. реально формируется техническое задание, составляется бизнес-план, проводятся торги, по итогам выбираются самые дешевые подрядчики (ну явно так, потому что качество работы просто адЪ), которые приходят корректировать корпоративную базу всего Сибирского филиала... В общем, здесь проще выкрутиться, чем кому-то что-то попытаться доказать. Запросы по два-три года просто висят в воздухе, а когда приходит заветное "была изменена транзакция IW69...", мы реально боимся читать дальше, потому что до того криво все (обычно) делают, что лучше бы вообще не трогали. А уж до модуля BI (который тоже есть в продуктах семейства SAP) уж и вообще как до Китая раком. Так что "лучше" или "не лучше" - это надо смотреть в контексте конкретной структуры предприятия. Увы и ах, но это так. Поэтому Take a buben and dancing! )))
@PavelAnatolich
9 жыл бұрын
P.S. Проблему решил брутально - научил эксель выполнять скрипты в SAP и копировать данные из его выгрузок в текущую книгу Excel. Делов на пять минут: В экселе жму кнопку, которая запускает макрос, который идет в SAP, запускает нужную транзакцию с нужными параметрами, делает выгрузку в Excel, потом из полученной выгрузки тяну всю таблицу в свой файл через Copy Destination. И готово: У меня данные сразу в нужном формате и с нужной скоростью.
@43sferam
9 жыл бұрын
Павел Симаков Самое верное решение. Используете сводные таблицы? Когда была необходимость в Excel для анализа их использовал, очень удобно. И они кстати могут непосредственно к sql серверу подключатся, если ни чего не путаю. Посмотрите в эту сторону.
@PavelAnatolich
9 жыл бұрын
Иван ВладимировичСводные таблицы? PowerPivot - вот настоящие сводные таблицы :) А так да - стараюсь выжать из экселя максимум. Пользую еще QlikView, но он по ряду параметров уступает экселю. И цена конская. В общем, развлекаемся как можем :) Сейчас заинтересовался темой построения дашбордов. Пока изучаю какие они бывают и т.п. нюансы.
Очень хорошее учебное видео. Мне оно очень помогло. Мне нужно использовать эту процедуру на большое количество ячеек. Когда, я выбираю очень большое количество ячеек, процедура выполняется очень долго. Есть ли возможность выполнение такой команды быстро для большого количества ячеек. Буду очень благодарен, если подскажете, как записать такую процедуру.
Здравствуйте! Подскажите пожалуйста. Можно ли в exel сделать что то вроди эмулятора биржи? Правда здесь есть одна особенность, нужно что бы цены генерировались с помощью "ГСЧ" или т.п. Помогите очень нужно.
здравствуйте у меня один вопрос. можно ли создать макрос для печати данных с одного листа. например у меня лист Краснодарский край а там отдельно ведомости для пенсионеров городов или сел края. и каждый раз я делаю принт селектион для каждой ведомости. есть ли способ полегче? это очень утомительно. заранее спасибо
можно ли использовать листы Личной книги макросов для применения макросов ко всем Листам Excel?
я хочу реализовать такую вещь: из таблицы событий данных в Экселе, как то создать постоянные кнопки в ленте, эти кнопки должны быть всегда при открытии любого документа Эксель . и вот, по нажатию этих кнопок, чтобы открывался другой лист с Итогами подсчета в новой таблице с определенными колонками наименований. Для этого обязательно нужно Макросы уметь создавать или как то можно штатными средствами Эксель справиться?
Es por eso que cuando ves un buen video que fue filmado y comentado de manera muy competente, ¿todavía hay algunos ciervos tontos que pusieron debajo del video "no les gustó"?
Здравствуйте Николай. Известен /есть ли способ запускать макрорекордер програмно в vba Excel ?
Круто! Спасибо большое. У меня получилось по уроку повторить, вот только не понимаю как это использовать в работе. Точнее не могу понять как данные с работы подставить чтобы был нужный результат.
@baukaalimgazy2989
4 жыл бұрын
А что именно надо?
Познавательно
Николай, почему вы в своих примерах макросов не используете отступы для визуального структурирования кода?
Дорого времени суток, подскажите,как таблице Excell закрепить за определённым столбцом язык ввода,чтобы постоянно не переключать в ручную. Какие команды в VBA?
Блин, сделал такой же макрос, при выполнении Эксель выдает ошибку со ссылкой на переменную. Что делать?
Подскажите, а как мне настроить макрос, есть 2 столбца (первый составлен из второго с удалением дублей), мне нужно найти все дубли во втором и только то что дублируется окрасить в цвет и в первом и и во втором в один цвет?
Очень интересно. Я когда-то делаль запись макроса, потом чистил-дописывал его, заворачивал в циклы и делал кнопку на листе. Из 26 файлов районных отчетов получался областной отчет в новый файл. Но это было двацать лет назад, сейчас таких задач не стоит, а жаль, было интересно.
@lexx.v
2 жыл бұрын
если интересно, можешь помочь мне :) мне надо из двух файлов за два месяца, сделать один суммирующий. т.е. есть перечень организаций с начислениями отдельно за каждый месяц, а мне надо слепить вместе, получить итого за 2 месяца. сложность в том, что организации каждый месяц меняются, добавляются или убывают, а структуру файла, порядок сортировки менять нельзя.
@375957
2 жыл бұрын
@@lexx.v "Когда-то" означает на офисе 97 или 2000 и про "лет двадцать назад" я написал. На сегодняшний день стоит вопрос, "а оно мне зачем, если по работе я сталкивался с этим двадцать лет назад, последний раз?". Ради интереса я пойду сниму фары с машины отполирую и наклею пленку или построю ВПН в жопу мира. По твоей задаче, поищи макросы что-то типа "список файлов в папке" и "поиск последней непустой ячейки на листе". Наклацай свой макросик заполнения шапки результирующего файла, копирования выделений от последней непустой до А2 из файла оотчета. Дальше закрути цикл на основе найденного макроса "списка" вокруг своего макросика, в который добавь поиск последней ячейки, выделение до А2 и копирование из найденных файлов в результирующий.
Осталось вспомнить школьный курс VBA))))))
Требуется помощь! Пытаюсь создать макрос в MVB, ничего не выходит. Нужно знаку "+" присвоить функцию прибавления. Как прописать команду? Заранее благодарю
Для макроса всегда запускать ексель. Хотел чтоб были обращения к различным таблицам на фтп и их "доделка" до нужного формата
а есть уроки по этой теме у тебя?
Очень большая просьба помочь с макросом sendkeys. Создал несколько кнопок и назначил каждой макрос SendKeys "1" , SendKeys "2" и так далее. При активной ячейке вводится либо одно число либо другое (заменяя предыдущее) . А нужно чтобы вводилось оба. Например число 12,11,21 и т.д Как осуществить такое? P.S пробовал вместо sendkeys использовать ActiveCell.Value = ActiveCell.Value & 1. При таком раскладе числа вводятся как положено, но тогда они не реагируют на условия проверки данных. Короче замкнутый круг, а всего то хотелось создать виртуальную клавиатуру из цифр. На данный момент макрос выглядит так - Sub Кнопка1() SendKeys "1" End Sub Второй и остальные макросы аналогичны - Sub Кнопка2() SendKeys "2" End Sub Что в макросы нужно дописать, чтобы они позволили рядом с введенной цифрой еще цифры добавлять, (В активном окне), а не заменяли их? А то банально получается либо 1 либо 2, а я хочу 11,12,21,22 и .т.д , как при наборе с обычной клавиатуры.
Добрый день. Пользуюсь макросом на снятие пароля с листа и книги, где-то с года как данный макрос в некоторых книгах не работает. Не знаете в чем проблема может быть?
Подписался
Николай, я бы хотел заказать такой макрос: В столбце Excel написаны Фамилия, Имя, Отчество человека. Мне нужно, чтобы первое слово (подразумевается, что это будет фамилия) переместилось в столбец слева. Чтобы в итоге у меня была фамилия в одном столбце, а имя и отчество - в другом.
@FSG_Fritz
6 жыл бұрын
Данные-Текст по столбцам-Разделитель: пробел
Добрый день. В чем отличие между простой формулой НДС и расчета НДС через макрос ? Честно говоря, не очень мне понятно .заранее спасибо за ответ .
Добрый день! Почему-то в выборе функции нет раздела "определенные функции"! Как это исправить?
Здраствуйте ! когда написал макрос тот что по уроку запустил и вискочила у меня какая то табличка с надписью "Invalid Next control variable refarance" в поле ввода команд Microsoft Visual Basic , все проверил правильность написания команд опять вискакивает..может я гдето не поставил флажок какой то..зарание спасибо)))
Николай, здравствуйте! Обязательно ли НДС писать английскими буквами или можно русскими?
@planetaexcel
6 жыл бұрын
Это название функции - как ее назовете в коде VBA, так и нужно писать в ячейку листа.
Где взять большую толстую книжку по VBA посоветуй, добрый человек? (на вопрос будет отвечать Николай Павлов)
@yep.5572
6 жыл бұрын
3 года ждал и не дождался :D
@quadroninja2708
11 ай бұрын
эхх
скажите пож-та, а что требуется, чтобы не на вба писать, а на шарпе?
Скажите пожалуйста, есть ли возможность решить данную задачу без использования VB? 1.Ячейка А1 имеет значение "5", и закрашена красным цветом. 2.Ячейка А2 имеет значение "=А1".Результат, соотвественно, будет отображен как "5". А как сделать так что бы ячейка А2 отображала так же и цвет А1? Ну и как вариант, если использовать макрос, то как его правильно прописать? Нужно что бы при изменении данных и цвета ячейки А1, так же изменялся цвет и значения ячейки А2. Спасибо.
@planetaexcel
3 жыл бұрын
Без VBA - никак.
@user-yq3ip5gd1f
3 жыл бұрын
@@planetaexcel благодарю за ответ
как посчитать разность дат например: с 01.01.1900 года до 20.07.2007 года в формате: __ лет; __месяцев; дней?
@BilyalKhassenov
5 жыл бұрын
Добрый день! Для этого в самом Excel существует функция (то есть обычная формула) РАЗНДАТ. Работает она следующим образом: 1. Выбираете нужную ячейку, где должно быть отображено количество дней / месяцев / лет 2. Вставляете или прописываете следующую формулу: =РАЗДАТ([нач_дата],[кон_дата],[единица измерения]) 3. Вместо [нач_дата] ставите ссылку на начальную дату - альетернативно можно дату прописать вручную - вот так "01.01.2000" 4. [кон_дата] заменяете на конечную дату, как в шаге 3 5. И выбираете единицу измерения - то есть разница между датами в годах / месяцах / днях. Заменяете [единица измерения] для лет на "y"; для месяцев на "m"; для дней на "d". Вот пример того, как в итоге может выглядеть формула: =РАЗНДАТ(A1;B1;"d") - В ячейке А1 начальная дата, в В1 - конечная. Формула выдаст количество дней между датами. И конечно же данную формулу можно использовать и в VBA. В скором времени я собираюсь снять про написание формул в VBA отдельное видео на своем канале. Если Вам интересно - подписывайтесь :)
12:21 Как же сделать макрос "Сумма прописью"? (Встречал решение без макроса).
Иногда файлы выдают сообщение о невозможности выполнить макрос. Как решить проблему (версия 2019, англ.)? Заранее спасибо за помощь.
как мы можем прочитать MIN функции?
Здраствуйте, подскажите вопрос. При запуске макросов выскакивает надпись Can t find project or library, это говорит о том что у меня не подключены библиотеки ? Пытаюсь дальше включить Tools/Peferences - выскакивают не активации библиотек а password, Это значит кто то в этих настройках поставил пароль ??
@planetaexcel
4 ай бұрын
Да.
Сейчас НДС 20% - надо переделывать ролик :-) и не кто их не боится, но вирусы там часто могут использовать, потому надо или самому писать или знать что там написано. Спасибо.
У меня почему-то нет "Определенные пользователем". Подскажите пожалуйста, что делать
Скажите пожалуйста а на макбуке можно так программировать?
@BilyalKhassenov
5 жыл бұрын
Здравствуйте, Наталья! Конечно можно. Единственное - возможно, Вам придется иногда смотреть самой, например, другие комбинации клавиш для ускорения работы. Но поскольку это не критично и в целом не обязательно, это абсолютно не является проблемой.
как написать макрос для повторения № ячеек в столбце? пример 11/11 первые 2 строки, 12/12-следующие 3и4-ая строки и т.д.
Как установить современный Excel, если windows-10 тяжелый до моего компа?
@planetaexcel
3 жыл бұрын
Боюсь, что с этим могут быть проблемы. Последняя версия Office однозначно требует Windows 10.
Помогите сделать простой макрос. Экспорт 33х ячеек в тхт. при нажатии кнопки. Все просто и такого нет.