"Чистка" кода макроса
При автоматической записи макроса в программном коде фиксируются все действия пользователя, отчего код "разбухает" и становится запутанным и трудным для восприятия. Поэтому после записи макроса необходимо "чистить" код, удаляя ненужные команды и оптимизируя его структуру. В результате объем кода может сократиться в несколько раз, при этом он становится значительно легче для понимания и возможной последующей доработки.
В данном уроке показан пошаговый алгоритм "чистки" программного кода от "мусорных" строк. Кроме того, рассматривается конструкция With...End With - ее назначение и структура записи.
зарегистрироваться на сайте
обновите страницу по этой ссылке или кнопкой F5
Комментарии
Дмитрий спасибо, это кстати очень хороший способ изучать возможности VBA.
No comment! Браво!
Спасибо большое за четкие и грамотно оформленные уроки. Буду ждать продолжения
Спасибо за интересные уроки!
Всё понятно и просто большое спасибо Дмитрий, вы сказали до следующих уроках , а они будут
Спасибо, все очень понятно
Кратко, лаконично и полезно! Спасибо за урок, Дмитрий!
а где звук?????
Дмитрий, извините, просто у меня звук был отключен. Мне очень нравится стиль Вашего объяснения и Ваше владение риторикой просто восхищает. Тема раскрыта полностью. СПАСИБО, СПАСИБО!!!!!
Спасибо большое за Ваши уроки, очень конкретно и все понятно. Огромное спасибо!
Спосибо Дмитрий!Все очень хорошо поднесено!Понятно и сжато!Ешчо раз СПОСИБО!
Дмитрий объясните как скачать скачать данное видео.
Доброго дня!
Дмитрий, огромное спасибо Вам за эти замечательные уроки, и дай Вам Бог сил и терпения продолжать начатое.
Спасибо Дмитрий!
Очень грамотное пояснение. Я сам недавно до этого дошел при (только мне не встретился у меня WITH End With), но лишние перемещения по листам и ячейкам тоже у себя убирал. И тут сегодня Ваш урок скажем так в подтверждение моих мыслей.
Лучше не встречала.
Доброго дня!Урок мне понравился.А можно его скачать,чтобы
в спокойной обстановке поразмышлять об увиденном (я рабо-
таю с чужого компьютера)
Добрый вечер, Анатолий.
К сожалению, возможность скачивания уроков на сайте пока не предусмотрена. Возможно, это будет сделано позже.
Дмитрий как можно посмотреть следующие уроки?
Добрый день, Николай.
Для просмотра уроков №6 и №7 перейдите по соответствующим ссылкам в списке уроков: www.excel-eto-prosto.ru/lessons
Ещё раз большое спасибо!!!
Отличный урок. Большое спасибо!!!
Хороший урок. Спасибо. Много для себя взял в плане редактирования кода.
Спасибо! Очень ценный урок, позволяющий без особых усилий приводить код программы в компактную форму!!!
Дмитрий добрый день. Сокращения строки
Range("A2").Select
ActiveCell.FormulaR1C1 = "Сотрудник"
до варианта
Range("A2") = "Сотрудник"
Компактней получается. Или данная запись имеет подводные камни?
Спасибо.
Добрый день.
Range("A2").Select
ActiveCell.FormulaR1C1 = "Сотрудник"
корректно сокращается до
Range("A2").FormulaR1C1 = "Сотрудник" либо же до Range("A2").Value = "Сотрудник"
(поскольку здесь вычисляемой формулы нет, то "значение" ячейки совпадает с "формулой").
Свойство value для ячейки является свойством по умолчанию, поэтому, когда мы вообще никакое свойство не указываем, считается, что имеется в виду именно value. таким образом,
Range("A2") = "Сотрудник" - это то же самое, что и Range("A2").Value = "Сотрудник"
В данном случае подводных камней нет и такая запись тоже корректна.
Дмитрий, большое спасибо!
Хочу найти ответ на очень важный вопрос:
есть ли в EXCEL 7 "точность как на экране?"
Добрый вечер, Наталья.
Подозреваю, что ответ на Ваш вопрос находится здесь:
http://office.microsoft.com/ru-ru/excel-help/HA010218870.aspx
Спасибо! Не знала, что за этим значком столько настроек!
Дмитрий,из-за Ваших уроков поздно ложусь спать.Польза от них настолько очевидна, что они отгоняют сон лучше,чем просмотр хороших футбольных матчей, от которых пользы нет никакой))))))))))))
P.S. Спасибо.
Дмитрий,дай Вам бог здоровья и не угасающего желания по-прежнему помогать людям!
Дмитрий!
Ваши уроки - "ШЕДЕВР" лаконичности.
Огромное спасибо за эти уроки.
Когда же успеваете столько сделать? Вы же еще отвечаете на частные вопросы, изучаете языки и т.д.?
Я в восторге от ваших уроков. ОЧЕНЬ ЗДОРОВО.
По ACCESS имеются такого плана уроки?
Благодарю.
По Access в ближайшее время уроки не планируются - мало кому это нужно, а для того, чтобы что-то действительно практически полезное сделать на Access, потребуется затратить немало времени и овладеть помимо программирования на VBA еще и языком запросов SQL, к тому же столь удобного (как в Excel) макрорекордера там нет. Поэтому в Excel все гораздо быстрее, понятнее и проще в практическом применении.
PS: Когда успееваю? Ну, вот сегодня с утра в спортзале побегал-поплавал и в 9 часов - вперед работать!
Еще раз добрый день, Дмитрий!
Огромное спасибо за вашу заботу о "несмышленышах". Я обратил внимание на ваш справочный материал в 4-м уроке. Там при группировке строк получаете кнопку "+/-" наверху группируемого массива. А по умолчанию эти кнопки обычно устанавливаются снизу. Как добиться, чтоб кнопки устанавливались сверху?
В Excel 2007 это настраивается на вкладке "Данные" - группа кнопок "Структура":
Добрый вечер, Дмитрий
Не верится, что Вы один работаете на данном сайте. Это невозможно же так быстро реагировать на вопрос "ЛЮБОГО", обратившегося к вам.
ОГРОМНЫЙ РЕСПЕКТ за вашу работу.
Ну, мне не всегда удается отвечать оперативно - иногда проходит несколько дней. Да и вопросы разные бывают...
Спасибо, Дмитрий, все понятно. Хотелось бы сохранить для себя, когда при работе возникнут какие-то вопросы, всегда можно воспользоваться. Благодарю. Людмила
С праздником Вас, Дмитрий!
Я несколько дней не заходил на почту и пропустил ваши письма.
Хочу Вас поблагодарить за ваши истинно великолепные уроки.
А главное пожелать КРЕПКОГО ЗДОРОВЬЯ, успехов на вашем поприще, ГЛАВНОЕ - СЧАСТЬЯ. Такие, как Вы, заслуживают СЧАСТЬЯ.
Еще раз СПАСИБО, радуйте себя своими УСПЕХАМИ и приумножайте количестве счастливых людей вашими уроками.
Еще раз с Новым Годом, Рождеством Христовым.
Анатолий
Здравствуйте, Анатолий.
Большое спасибо за поздравления - очень приятно Вас тоже поздравляю с наступившими уже Новым годом и Рождеством! Пусть 2013 год будет для Вас успешнее и счастливее года 2012-го.
Поправил цифру на Твиттере,почему-то всё равно 0. Урок мне оказался очень полезен и понятен. Спасибо. Жалко, нельзя сохранить урок на ПК, ведь голова не "дом советов"...
Доброй ночи, Сергей.
Да, со счетчиком Твиттера есть проблемы - не обращайте внимания.
Да, к сожалению скачать уроки нет возможности - но их можно в любое время пересмотреть на сайте.
Спасибо Дмитрий, перд этим уроком накуралесил длинный пробный макрос, теберь попробую улаконичить
очень интересный урок
Отличные интересные уроки!Спасибо огромное за пошаговые пояснения.Хотелось бы скачать, чтобы потом в любое время освежить знания.
Все понятно.СПА-СИ-БО!!!!!
Благодарю! Ваши уроки придают уверенности в себе.
Приятно изучать Отлично подготовленные материалы. Мастерство изложения материала значительно выросло, как предложение - Таблицу начинать с номера п/п. Мне сильно понравился стиль изложения. Удачи.
большое спасибо, за помощь в этом не простом на первый взгляд деле)
Спасибо! Лаконично и понятно.
Большое спасибо за Ваш поистине титанический труд. Дикторское сопровождение Вашего видеоряда на столько чёткое, лаконичное и понятное, что спотыкающаяся речь ведущих телеканалов вызывает лёгкое сожаление. Ещё раз спасибо. ВладФ.
могут только зарегистрированные пользователи.
Ваше имя и тот e-mail, который был указан при регистрации)
В любой момент времени вы можете отказаться от получения сообщений.
Полезно, наглядно, понятно, существенно расширила свои знания благодаря данным урокам - спасибо, Дмитрий)
Добрый день, Анатолий.
Подробнее о создании программы для тестирования было рассказано в специальном платном мастер-классе "Создание программы по тестированию". Приобрести его можно по этой ссылке.
Что касается счетчика времени - в мастер-классе такого функционала не было, но позднее я доработал созданную в нем программу и добавил в нее такой счетчик - при приобретении мастер-класса я вместе с ним предоставлю и доработанную версию программы.
Спасибо! Классно. Где можно списать Вашу программу для шаблона? Счетчик времени на тестирование как вставить?
Здравствуйте. Подскажите, а можно ли сделать Q-код в таблице, но чтоб там было видно наименование упаковки, вес, дата прихода, наименование контрагента и тд. И при каждом изменении данных, автоматически делался Q-код?
Добрый день, Дмитрий. Я случайно увидела ваши видео в ютубе. Посмотрела и мне стало интересно изучить макросы. Перешла по ссылке и просмотрела часть бесплатных видео и мне очень понравилась ваша манера преподавать просто без лишних слов. Скажите, пожалуйста, а как сделать выпадающий...
Здравствуйте В видео "Автоматизация заполнения бланка документа (платежного поручения)" говориться, что можно скачать файлы с макросами, о которых идет речь. Не могу найти. Подскажите, пожалуйста,где скачать Файл?
Благодарю Вас хотя у меня оффис 97 все полчается
здравствуйте, Дмитрий... подскажите пожалуйста такой момент, для того, чтобы сделать макрос с фамилиями, я сделала перечень с фамилиями и суммами.. так вот у меня слово фамилия при сортировке улетает в самый низ))) то есть оно тоже сортируется... что не так в моей таблице?
Спасибо большое.Очень полезная информация
Замечательные уроки, большое спасибо автору. Все очень доходчиво, без лишних заморочек.