"Чистка" кода макроса | Автоматизация в Excel - бесплатные уроки
Отзывы о мастер-классах и тренингах
За месяц изучил материал, который рассчитан примерно на семестр ВУЗовского обучения

Прекрасно сформированная последовательность подачи материала и наличие всего необходимого объема информации в данном тренинге дали мне возможность за месяц изучить материал, который (в соответствии с изучаемым мной самоучителем) рассчитан примерно на семестр ВУЗовского обучения. Плюс интересные факты, дополнительные "Фишки" и вообще наличие быстрой и качественной обратной связи преподавателем как в онлайн режиме, так и вне занятия. Спасибо Дмитрий за проделанную Вами работу и за профессиональный подход к обучению.

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

По сфере деятельности (экономика-финансы), без Excel(я) жить не могу, что на работе, что дома всё в нем, в родном! )

Уровень владения средний, но по сравнению с другими, достаточно высокий. Автоматизация достигается в основном с помощью, формул, связей, выпадающих списков, именованных диапазонов, формул: ЕСЛИ, ВПР, ПОИСКПОЗ, ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ и сводных таблиц. В общем много что сделано, всё работает, можно сказать упр.учет ведется в нем. Актуальность и точность данных выше бухгалтерских. Конечно бывают мелкие недочеты и дублирование вводимой информации…

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

Попытки начать изучать VBA были, но безрезультатно… Сталкивался со многими непонятностями, не понимал структуру и те же самые Dim, Do, которые вводили в ступор.

Так вот, тренинг проведённый Дмитрием, его подача материала, живое реагирование на вопросы, его умения увлечь, донести доступным языком и примерами, привело к пониманию и даже результатам в практической деятельности. Не зря говорят, что любовь к предмету или результат обучения зависит от преподавателя.

В общем Дмитрий сумел раскрыть часть непонятного и МИФического (VBA в транслите = МИФ :) ) для меня, СПАСИБО!

Дмитрий о практическом тренинге
Письмо с предложением, от которого не смог отказаться

Отличный тренинг!

Я давно получаю рассылку с сайта, но принять участие в вебинарах и тренингах не получалось. То цена не устраивала, то времени не было. Но недавно я получил письмо с предложением от которого не смог отказаться. Теперь когда я уже прошел тренинг, можно с уверенностью сказать, что я получил от него гораздо больше чем потратил. Дмитрий действительно хорошо ведет уроки, а самое главное - это практические задания. Только благодаря домашней работе можно научиться самому писать макросы. Пока не прочувствуешь это на себе, не сможешь понять некоторых вещей. И здесь важно то, что выполнение домашней работы всегда идет под контролем мастера - Дмитрия Быстрова. Так что самым прямым способ научиться автоматизации в екселе, на мой взгляд, является данный тренинг. Предварительно, перед тренингом, лучше всего просмотреть 15 бесплатных видеоуроков на сайте, что бы быть в теме) И не забывайте следить за акциями!;)

Дмитрий Георгиевский о практическом тренинге
Я бы дала курсу девиз "теория и практика, практика"

Всем привет!

Мне посчастливилось позаниматься очно, чему я очень рада!

Я - владелец маленького начинающего интернет-магазина. У меня несколько поставщиков, у всех прайсы в экселе с разными данными, и за любое изменение в прайс -листе - следует изменение в парсере, что влетает для меня в копеечку, а "прибыля" в кризис оставляют желать лучшего. А я знаю, что некоторые программисты дерут за изменение/добавление 2-3 строк по 5-15 тыс. В свое время, у меня был опыт программирования, давалось мне это легко. Я сначала искала обучение на php, но было так страшно, отзывы неоднозначные про все эти курсы. И тут приходит суперпредложение от Дмитрия поучаствовать в тренинге. Excel я знаю неплохо, давно знаю сайт Дмитрия, по бесплатным урокам знакома с методикой обучения. Поэтому я подумала, а почему бы мне не делать вообще это через Excel?

Курс замечательный. Я бы дала ему девиз "теория и практика, практика". Еще не закончив его, у меня уже наработки есть по моей работе. В общем я очень довольна, мне очень нравиться, особенно нравиться то, что все получается! А у Дмитрия не возможно что-то не понять! В общем если есть сомнения - не сомневайтесь, для обработки данных в этом курсе есть все.

Евгения Крюкова о практическом тренинге
Для себя открыл новую грань Excel

Дмитрий, спасибо за обучение и проделанную работу.

Очень доходчиво объясняете, понравился гибкий график обучения и ваши комментарии, подводящие к верному решению задачи.

Для себя открыл новую грань Excel и собираюсь дальше в этом направлении развиваться.

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

Дмитрий, желаю Вам совершенствоваться и много хороших учеников.

Антон Угольников о практическом тренинге

"Чистка" кода макроса

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

В данном уроке показан пошаговый алгоритм "чистки" программного кода от "мусорных" строк. Кроме того, рассматривается конструкция With...End With - ее назначение и структура записи.


Для просмотра видео необходимо
зарегистрироваться на сайте
Если вы уже зарегистрированы на сайте -
обновите страницу по этой ссылке или кнопкой F5

Комментарии

Страница 3 из 4:   1  2  3  4  
#1694   Александр    24.12.2013 в 21:22:31

Урок очень замечательный! Просмотрел свои старые макросы и удивился, сколько там мусора! Будем наводить порядок. Спасибо Вам, Дмитрий, что ведете нас по этому лабиринту Excel.

#1717   Сергей    11.01.2014 в 18:09:15

чистый код, чистая душа!!! спасибо за урок полезно очень

#1722   Руслан    13.01.2014 в 02:29:57

Однако...

#1723   Александр    13.01.2014 в 11:06:50

Согласен со всеми, кто высказался по поводу урока. Очень полезно и познавательно одновременно!!! Спасибо!!! И со старым Новым Годом!!!

#1727   Олег    15.01.2014 в 13:39:40

Спасибо! Очень интересные и понятные уроки!

#1759   Вячеслав    24.01.2014 в 00:43:36

Очень круто!!!

#1777   Татьяна    31.01.2014 в 22:34:25

Спасибо, интересно.

#1824   Анжелика    20.02.2014 в 19:05:21

Спасибо, очень доступно объясняете

#1871   Татьяна    25.02.2014 в 22:25:51

Спасибо, очень интересно и доступно, но приходиться конспектировать.

#1886   Ирина    09.03.2014 в 22:33:35

Большое спасибо, доступно и полезно

#1895   Татьяна    14.03.2014 в 16:51:48

Я в восторге! Столько времени потратила на непонятную литературу. А сегодня наткнулась на Ваши уроки и за час просмотра всё стало ясно как божий день!!! Спасибо за то, что Вы делаете!

#1918   Петр    06.04.2014 в 16:50:10

Спасибо! Никогда не занимался, но стало получаться

#1930   Игорь    10.04.2014 в 23:43:44

Да, все понятно и прозрачно!

#1932   Сергей    11.04.2014 в 01:40:06

Спасибо.

Такого понятного не встречал. Жаль, что нигде не работаю, даже применить негде. Для себя конечно потренируюсь.

#2034   Екатерина    16.04.2014 в 21:03:35

Супер-урок!Буду писать и "чистить" Необходимы тренировки

#2108   Юлия    25.05.2014 в 23:02:12

Спасибо за емкие понятные уроки.

#2152   Леонид    07.07.2014 в 16:56:33

Понятно и полезно. Раньше я использовал макрорекордер, но оптимизацией ни разу не занимался. Не знал, как это делать. Теперь буду. Спасибо.

#2185   Надежда    21.07.2014 в 16:43:41

Спасибо большое за педагогический талант и время!

Очень полезный урок, до которого сам "дойдешь" только кровью и потом через какое-то время.

#2227   Ксения    27.07.2014 в 19:41:27

Дмитрий, а возможно ли сделать автозамену?

Например, вместо

".Select

ActiveCell."

поставить "." по всему макросу?

#2229   Дмитрий Быстров    28.07.2014 в 11:31:02

Доброе утро, Ксения.

Попробуйте Но мне кажется, у Вас это не получится из-за символа "перенос строки", которым отделяются слова Select и ActiveCell. Поэтому я это делаю вручную

#2353   виктор    22.09.2014 в 19:11:37

+

#2550   Татьяна    02.12.2014 в 15:03:26

Очень подробно и поэтому понятно. спасибо!!!

#2563   Аслибек    06.12.2014 в 18:33:47

очень интересно спасибо, важно макрос

#2684   Анастасия Мартыненко    20.02.2015 в 14:49:55

Спасибо, за доступное изложение материала.

#2689   Слава Фёдоров    21.02.2015 в 18:06:22

Спасибо, очень полезный урок,просто и понятно постараюсь применить на практике

#2690   Yana    22.02.2015 в 03:25:54

Супер, все быстро и понятно

#2809   Нартау    07.04.2015 в 11:22:01

Меня пугал именно такой длинный и не понятный код макроса, который я просматривал после записи. Теперь я понимаю, что не так страшен черт, как его малюют! ))) Спасибо за это Дмитрию!

#2845   Геннадий    23.05.2015 в 02:36:28

Превосходно! Подробно, понятно, всё разложено по полочкам. Спасибо!

#2953   Лика    04.08.2015 в 15:29:09

Спасибо! Как понятно, пытаюсь проделывать ваши уроки самостоятельно, получается!

#2959   Валерий    18.08.2015 в 09:47:21

Дмитрий!

Не могу понять почему перестает работать макрос после включения защиты листа? При попытке его запуска появляется окно с надписью:

Run-time error '1004'

Aplication-defined or object-defined error

#2960   Дмитрий Быстров    18.08.2015 в 12:32:13

Скорее всего, Ваш макрос пытается изменить содержимое защищенной ячейки. При включенной защите листа такие действия запрещены - как вручную, так и программно. Поставьте в начале макроса команду снятия защиты листа, а в конце - команду ее включения.

#2961   Валерий    18.08.2015 в 12:42:38

Конечно же я снимал защиту с тех ячеек, в которых происходили изменения, но это не помогло. Предложенное Вами решение проблемы мне в голову не приходило. Спасибо! Буду пробовать.

#2971   Анастасия    02.10.2015 в 15:55:44

Здорово! Да здравствуют чистые и лаконичные макросы! Так будет работать гораздо быстрее! и макросы гораздо легче прочитать.

#2982   валя    12.10.2015 в 01:30:24

Благодарю сердечно. Как будто вынул из ботинок водолазные стельки.

Успехов вам, Дмитрий! И нам также.

#3045   Федорова Марина    31.01.2016 в 22:35:06

Добрый вечер,Дмитрий! Спасибо Вам за эти уроки!

Это раз. А два - вопрос.

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

Запись макроса упростила до минимума: передвигаюсь на три ячейки по кругу и меняю заливку. Получаю:

ActiveCell.Offset(0, 3).Range("A1").Select и т.д.

ActiveCell.Offset(-2, 0).Range("A1").Select

С этим не знаю, что делать. Чтобы чистить надо понимать, что здесь написано... Этот Range("A1") везде, куда бы курсор ни ткнула..Не понимаю...

#3055   Дмитрий Быстров    18.02.2016 в 16:41:54

Добрый день, Марина.

Как-то пропустил Ваши комментарии

Касательно ActiveCell.Offset(0, 3).Range("A1").Select - согласен, синтаксис здесь немного запутанный, но разобраться можно.

ActiveCell - это просто активная ячейка (та, что выделена на текущем листе).

Offset(0, 3) - это смещение относительно этой активной ячейки. В данном случае - на 0 строк (т.е. строка остается та же самая) и на 3 ячейки правее.

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

Поэтому для того, чтобы показать, что после смещения нас интересует только одна ячейка, в код добавляется указание Range("A1") - оно гарантированно вернет только первую ячейку из смещенного диапазона. В Вашем случае это выражение смысла не имеет (т.к. у Вас и так получается одна ячейка), но и вреда не наносит.

Select в конце указывает, что полученную в результате этих манипуляций ячейку нужно выделить.

Резюме: вся эта длинная конструкция просто выделяет ячейку на 3 столбца правее той, что уже была выделена. Как-то так

#3048   Федорова Марина    07.02.2016 в 13:22:29

Дмитрий! Еще раз от души благодарю за Ваш труд!

И это даже хорошо, что Вы не ответили Пришлось разбираться самой! Оказывается,в Excel2010 много чего интересного... и есть существенные отличия от предыдущих версий... Но с Вашим "путеводителем в кармане" удалось многое преодолеть! С энтузиазмом двигаюсь дальше Спасибо Вам!

#3061   Ольга    28.02.2016 в 22:10:21

Как, и в предыдущих уроках, все понятно и доступно показано. Благодарю, Дмитрий, за ваш труд. Успехов вам.

#3065   Виктория    20.03.2016 в 21:54:19

Спасбо большое, уроки очень нравятся!

Все просто, понятно и доступно. Хочется продолжать смотреть курс и учиться этой сложной науке!

#3069   Олег    29.03.2016 в 15:51:18

Спс! Просмотрел старые макросы а там...,нужно наводить порядки!

#3094   Марина    29.04.2016 в 15:42:58

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

#3169   Владимир    18.08.2016 в 20:56:32

Дмитрий, восхищаюсь Вами: умением мыслить, умением так ясно донести свою мысль, вашими увлечениями. Удачи Вам!

#3199   Евгений    04.10.2016 в 18:51:03

Отличные уроки! Спасибо большое автору!

#3224   Татьяна    09.03.2017 в 13:17:49

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

Страница 3 из 4:   1  2  3  4  
Оставлять комментарии и просматривать видеоуроки
могут только зарегистрированные пользователи.
(если ранее Вы уже регистрировались, введите повторно
Ваше имя и тот e-mail, который был указан при регистрации)
Как к Вам обращаться:
Ваш адрес e-mail:
Нажимая на кнопку "Зарегистрироваться", я даю согласие на обработку персональных данных и соглашаюсь c политикой конфиденциальности
Ваши данные строго конфиденциальны, они нигде не публикуются и используются исключительно для информирования вас о новых материалах на сайте, мероприятиях и/или иных услугах данного проекта.
В любой момент времени вы можете отказаться от получения сообщений.
Последние комментарии
Роза
10.01.2025 в 17:23:18

Лучшие уроки по содержанию и грамотности, доступности, простоты я не встречала. Спасибо вам. вы умница.

Ольга
11.11.2023 в 11:32:51

Полезно, наглядно, понятно, существенно расширила свои знания благодаря данным урокам - спасибо, Дмитрий)

Дмитрий Быстров
29.01.2023 в 12:26:41

Добрый день, Анатолий.

Подробнее о создании программы для тестирования было рассказано в специальном платном мастер-классе "Создание программы по тестированию". Приобрести его можно по этой ссылке.

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

Ulluauz
29.01.2023 в 11:03:16

Спасибо! Классно. Где можно списать Вашу программу для шаблона? Счетчик времени на тестирование как вставить?

Светлана
23.08.2022 в 13:10:20

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

Людмила
17.04.2022 в 14:33:48

Добрый день, Дмитрий. Я случайно увидела ваши видео в ютубе. Посмотрела и мне стало интересно изучить макросы. Перешла по ссылке и просмотрела часть бесплатных видео и мне очень понравилась ваша манера преподавать просто без лишних слов. Скажите, пожалуйста, а как сделать выпадающий...

Станислав
16.08.2020 в 23:08:36

Здравствуйте В видео "Автоматизация заполнения бланка документа (платежного поручения)" говориться, что можно скачать файлы с макросами, о которых идет речь. Не могу найти. Подскажите, пожалуйста,где скачать Файл?

Юрий
21.07.2020 в 13:10:25

Благодарю Вас хотя у меня оффис 97 все полчается

Евгения
26.06.2020 в 01:10:51

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

juna
08.05.2020 в 15:02:44

Спасибо большое.Очень полезная информация

▲ Наверх