Как исправить макрос в excel

Как исправить макрос в excel

В этой статье я расскажу, как можно редактировать макрос, записанный с помощью команды “Запись макроса. “.

Файлы для скачивания:

ФайлОписаниеРазмер файла:Скачивания
Пример11 Кб1355

Давайте возьмем файл с предварительно записанным макросом или запишем новый макрос, как это сделать описано в статье “Как записать макрос не зная языка VBA? “.

Напомню, мы записывали макрос, который копирует данные из диапазона ячеек E2:E6, и вставляет их как значения в ячейки G2:G6. Допустим, у нас увеличился диапазон копирования и теперь нам нужно копировать данные из диапазона E2:E10, не переписывать же из-за этого макрос. Нам будет достаточно его отредактировать.

Итак, давайте откроем наш файл с записанным макросом, нажмем сочетания клавиш Alt+F8, должно будет открыться диалоговое окно макрос:

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

В данном окне мы выбираем наш макрос “Макрос1” и нажимаем кнопку “Изменить”, откроется окно редактора Visual Basic for Application, в котором мы увидим VBA-код нашего макроса:

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Нам необходимо перейти курсором в окно кода и поменять в строке кода Range(“E2:E6”).Select на Range(“E2:E10”).Select и закрыть редактор, после чего сохранить файл.

После чего наш макрос будет копировать данные уже из нового диапазона.

Источник

Как исправить макрос в excel

В этой статье я расскажу, как можно редактировать макрос, записанный с помощью команды “Запись макроса. “.

Файлы для скачивания:

ФайлОписаниеРазмер файла:Скачивания
Пример11 Кб1355

Давайте возьмем файл с предварительно записанным макросом или запишем новый макрос, как это сделать описано в статье “Как записать макрос не зная языка VBA? “.

Напомню, мы записывали макрос, который копирует данные из диапазона ячеек E2:E6, и вставляет их как значения в ячейки G2:G6. Допустим, у нас увеличился диапазон копирования и теперь нам нужно копировать данные из диапазона E2:E10, не переписывать же из-за этого макрос. Нам будет достаточно его отредактировать.

Итак, давайте откроем наш файл с записанным макросом, нажмем сочетания клавиш Alt+F8, должно будет открыться диалоговое окно макрос:

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

В данном окне мы выбираем наш макрос “Макрос1” и нажимаем кнопку “Изменить”, откроется окно редактора Visual Basic for Application, в котором мы увидим VBA-код нашего макроса:

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Нам необходимо перейти курсором в окно кода и поменять в строке кода Range(“E2:E6”).Select на Range(“E2:E10”).Select и закрыть редактор, после чего сохранить файл.

После чего наш макрос будет копировать данные уже из нового диапазона.

Источник

Как создавать, изменять и запускать макросы в Excel

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

Они значительно увеличивают эффективность работы с информацией. Дело в том, что они не только помогают реализовать некоторые функции, которые отсутствуют в стандартном комплекте, но и автоматизировать часто повторяющиеся действия. Сегодня мы более детально разберемся в том, что такое макросы, как они работают и как создавать новые и редактировать старые макросы.

Что такое макрос и для чего он применяется

Итак, макрос – это набор команд, которые должен выполнить Эксель. Они дают возможность автоматизировать почти любые часто повторяющиеся задачи. Достаточно просто выбрать одну команду один раз, воспользовавшись комбинацией горячих клавиш или панелью инструментов.

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

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

Инструкции, которые передаются макросу, содержат макрооператоры – конкретные команды, которые офисному пакету нужно выполнить. Ряд из них являются специфическими, но большая часть соответствует командам из главного меню. Это делается для того, чтобы сделать процесс создания макросов более дружелюбным для пользователя.

Давайте приведем один пример. Любое приложение, независимо от используемой операционной системы, содержит кнопку «Закрыть». Если мы хотим сделать это через макрос, нам нужно ввести в среду разработки команду ActiveWindow.Close. Видим, что по названиям операторов можно много чего понять, поскольку все они пишутся на английском языке. Это также упрощает задачу пользователя, который знает английский язык.

Бояться макросов не нужно, поскольку VBA – очень простой язык программирования. Большую часть действий можно запрограммировать, даже не написав ни строчки кода. Достаточно просто эти действия записать один раз. При этом важно помнить, что редактор кода значительно функциональнее по сравнению с визуальными методами написания макросов.

Как создать новый макрос в Excel

Как мы уже поняли, есть два способа записи макросов в Excel: ручной или автоматический. Чтобы воспользоваться последним методом, не требуется наличие каких-либо навыков программирования. Правда, он ограничен и не дает возможности записывать условия, формировать сложные циклы и так далее.

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

Способ 1. Автоматический запуск макроса

Перед тем, как записывать макросы, необходимо провести ряд несложных настроек, прежде всего, включить сами макросы. Правда, на данном этапе начинающего пользователя могут встретить некоторые трудности. Дело в том, что настройки макросов находятся на вкладке «Разработчик», доступ к которой изначально закрыт. Поэтому нужно сначала включить эту возможность. Последовательность действий следующая:

После этого мы увидим вкладку «Разработчик» в нашей программе. Делаем переход по ней. Перед нами появляется большое количество инструментов разработчика. Из всего этого ассортимента нас интересует группа «Код». Там находится маленькая кнопка «Записать макрос», после клика по которой осуществляется непосредственная запись этой программы. Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Далее пользователь увидит диалоговое окно. С него можно задать параметры для нашей будущей подпрограммы. Здесь доступны следующие настройки:

После выполнения всех действий нужно нажать клавишу ОК, тем самым подтвердив изменения. Теперь все действия, совершаемые пользователем, будут автоматически записываться в макрос. Это будет продолжаться ровно до тех пор, пока запись программы не будет остановлена. Значительно проще разобрать это на реальном примере. Давайте сделаем программку, которая будет умножать содержимое двух ячеек. Для этого нужно запустить запись макроса, ввести в ячейку формулу (в нашем случае это =B2*B3), нажать клавишу Enter, после чего остановить запись. Кнопка остановки записи макроса находится на вкладке «Разработчик» в группе «Код».

Запуск выполнения макроса

Как же проверить, работает ли наш макрос? Для этого нужно выполнить следующие действия:

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

Корректировка макроса

Если в ходе исполнения макроса появляются какие-то проблемы, их можно исправить. Самая распространенная проблема, по которой команды не выполняются, как надо – ошибки пользователя на этапе первичной записи команд. Чтобы отредактировать созданный макрос, нужно выполнить следующие действия.

На данном этапе нужно уже немного переходить к следующей теме: ручное редактирование макроса. Любой макрос начинается командой Sub. О том, что макрос заканчивается, компьютер понимает по команде End Sub. После слова Sub показывается название макроса. После этого в структуре записывается описание макроса и та комбинация клавиш, которая необходима для его запуска.

Далее следуют команды, которые выполняют конкретные действия. Например, номер ячейки мы получаем с помощью оператора Range. В нашем примере, мы получаем ячейку B2 с помощью команды Range(“B2″).Select. Это действие аналогично выбору ячейки левой кнопкой мышки. Значение ячейки, которая выбрана на данный момент указывается с помощью оператора ActiveCell.FormulaR1C1. Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Давайте попробуем наш макрос немного отредактировать. Допустим, нам нужно выполнить такую задачу: добавить дополнительную ячейку с адресом B4 и значением 3. В таком случае в код необходимо добавить такие строки:

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

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

Но это уже лирическое отступление. Нам еще осталось совершить одно действие – изменить первоначальное выражение, которое касалось ячейки D2, на это: ActiveCell.FormulaR1C1 = “=RC[-2]*R[1]C[-2]*R[2]C[-2]”

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Внимание! Видим, что адреса в ячейках в данном примере записываются, как R1C1.

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

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

Также можно ускорить работу макроса путем добавления команды Application.ScreenUpdating = False. После этого на экране не будут показываться те промежуточные шаги, которые выполняет макрос, лишь конечный результат. Если же нужно, чтобы отображение на экране было вновь включено, тогда нужно заменить False на True.

Способ 2. Создание макроса в ручном режиме

Автоматическая запись макроса – это хорошо, но данный метод имеет множество недостатков. Профессионалы создают макросы вручную. Для этого нужно выучить язык VBA и выполнять следующие действия:

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

Как изменять существующие макросы

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

Заключение

Мы видим, что макросы – это высокоэффективный инструмент, позволяющий автоматизировать огромные массивы работы. Если пользователю приходится выполнять огромное количество однотипных действий, или имеющихся возможностей Excel не хватает, они способны легко и просто исправить ситуацию.

Источник

Восстановление макроса в пошаговом режиме

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

В области навигации щелкните макрос правой кнопкой мыши и выберите конструктор.

На вкладке Конструктор в группе Сервис нажмите кнопку По шагам.

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

Появится диалоговое окно Пошаговое решение макроса. В этом диалоговом окне отображаются сведения о макросах и макроко они, а также номер ошибки. Ноль в поле Номер ошибки означает, что ошибка не произошла.

Как исправить макрос в excel. Смотреть фото Как исправить макрос в excel. Смотреть картинку Как исправить макрос в excel. Картинка про Как исправить макрос в excel. Фото Как исправить макрос в excel

Выполните одно из следующих действий:

Чтобы выполнить макрокопрос, показанный в диалоговом окне Пошаговое действие макроса, нажмите кнопку Шаг.

Чтобы остановить макрос и закрыть диалоговое окно, нажмите кнопку Остановить все макрос.

Чтобы отключить пошаговую по

Замечания

Чтобы начать пошаговую по

Чтобы начать пошаговую Чтобы добавить в макрос SingleStep, с помощью следующей процедуры:

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

Перетащите макрокопрос Шаг из каталога макрокоптов в окно конструктора и перетащите ее выше или ниже того места, где вы хотите начать пошаговую пошаговую пошаговку. У этой меры нет аргументов действий.

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

Предполагается, что при нажатии кнопки Выполнить пошаговая установка обычно продолжается до того места, где была вставлена макрос Шаг. В макрос можно добавить несколько действий SingleStep. При нажатии кнопки Продолжить в диалоговом окне Пошаговое действие макроса пошаговое отключение будет отключено до тех пор, пока не будет происходить следующая макрокоанда Шаг.

Если пошаговая поша Если вы запустите другой макрос, Access снова отобразит диалоговое окно Пошаговое решение макроса. Чтобы отключить пошаговое решение, нажмите кнопку Продолжить в диалоговом окне Пошаговое решение макроса или на вкладке Конструктор в группе Инструменты выберите пошаговое решение, чтобы он не выделялся.

Источник

Как создавать, изменять и выполнять макросы в Excel

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

Создание макросов

В Эксель создать макросы можно вручную или автоматически. Последний вариант предполагает запись действий, которые мы выполняем в программе, для их дальнейшего повтора. Это достаточно простой способ, пользователь не должен обладать какими-то навыками кодирования и т.д. Однако, в связи с этим, применить его можно не всегда.

Чтобы создавать макросы вручную, нужно уметь программировать. Но именно такой способ иногда является единственным или одним из немногих вариантов эффективного решения поставленной задачи.

Метод 1: Записываем макрос в автоматическом режиме

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

Узнать, как это можно сделать, можно в нашей статье – “Как включать и отключать макросы в Excel”.

После того, как макросы включены, можно перейти к нашей основной задаче.

Запускаем выполнение макроса

Чтобы проверить работу записанного макроса, нужно сделать следующее:

Корректируем макрос

Созданный макрос можно изменить. Самая распространенная причина, которая приводит к такой необходимости – сделанные при записи ошибки. Вот как можно отредактировать макрос:

Метод 2: создание макроса вручную

Заключение

Таким образом, использование макросов в табличном редакторе Эксель позволяет повысить эффективность и скорость работы. Создать их можно, как в автоматическом режиме, просто записав выполненные действия, так и написав код с нуля. Также, при необходимости, можно внести изменения в ранее созданный макрос и настроить отдельные аспекты его работы.

Источник

Leave a Reply

Your email address will not be published. Required fields are marked *