Руководство и примеры работы с макросами в Excel - Информационные технологии - Информатика

Руководство и примеры работы с макросами в Excel — Информационные технологии — Информатика

Практические работы в MS Excel - задания, советы, решения и ответы
Want create site? Find Free WordPress Themes and plugins.


Руководство и примеры работы с макросами в Excel — Информационные технологии — Разбираем подробно

  • Создаём макрос при помощи команды Запись макроса
  • Цикл FOR
  • Конструкция IF
  • Конструкция CASE
  • Многие люди думают, что макросы в Excel – это очень трудно, но это не так. В этой статье Вы найдёте несколько интересных и простых примеров, как можно автоматизировать Ваши повседневные задачи в Excel. Макрос – это программа на Visual Basic, созданная для того, чтобы автоматизировать задачи в Microsoft Office. В своих примерах я использую Excel 2010, но с таким же успехом Вы можете использовать Excel 2007.

    Создаем макрос при помощи команды «Запись макроса»

    1. Для начала откройте вкладку View (Вид) на Ленте. В выпадающем списке Macros (Макросы) нажмите кнопку Record Macro (Запись макроса).

      Руководство и примеры работы с макросами в Excel - Информационные технологии

      Откроется диалоговое окно Record Macro (Запись Макроса).

      Руководство и примеры работы с макросами в Excel - Информационные технологии

    2. Задайте имя макросу (не допускаются пробелы и специальные символы), клавишу быстрого вызова, а также, где бы Вы хотели сохранить свой макрос. При желании, Вы можете добавить описание.
    3. С этого момента макрос записывает действия. Например, Вы можете ввести слово “Hello” в ячейку A1.
    4. Теперь снова нажмите иконку Macros (Макросы) и в раскрывшемся меню выберите Stop Recording (Остановить запись).

      Руководство и примеры работы с макросами в Excel - Информационные технологии

    Доступ к записанному макросу можно получить с помощью команды View Macros (Макросы), которая находится на вкладке View (Вид) в выпадающем меню Macros (Макросы). Откроется диалоговое окно Macro (Макрос), в котором Вы сможете выбрать нужный. Дважды кликните по имени макроса, чтобы выполнить программу.

    Кроме этого, Вы можете связать макрос с кнопкой. Для этого:

    1. На вкладке File (Файл) нажмите Options (Параметры) > Quick Access Toolbar (Панель быстрого доступа).
    2. В поле Choose commands from (Выбрать команды из) выберите All Commands (Все команды).
    3. Найдите команду Option Button (Кнопка), нам нужна та, что относится к разделу Form Control (Элементы управления формы). Выделите ее и нажмите Add (Добавить). Затем нажмите ОК, чтобы закрыть параметры Excel.
    4. Выберите команду, только что добавленную на Панель быстрого доступа, и начертите контур кнопки на рабочем листе Excel.
    5. Назначьте макрос объекту.

    Примечание: Если у вас включена вкладка Developer (Разработчик), то получить доступ к элементам управления формы можно с нее. Для этого перейдите на вкладку Developer (Разработчик), нажмите на иконку Insert (Вставить) и из раскрывающегося меню выберите нужный элемент.

    Не знаете, как отобразить вкладку Developer (Разработчик)? Excel 2007: жмем на кнопку Office > Excel Options (Параметры Excel) > Popular (Основные) и ставим галочку напротив опции Show Developer tab in the Ribbon (Показывать вкладку “Разработчик” на ленте). Excel 2010: жмем по вкладке File (Файл) > Options (Параметры) > Customize Ribbon (Настройка ленты) и в правом списке включаем вкладку Developer (Разработчик).

    Цикл FOR

    В следующем примере Вы увидите, как использовать цикл FOR. Цикл FOR позволяет нам выполнить повторение цикла с разными значениями. Давайте посмотрим, как можно заполнить числами от 1 до 5 ячейки A1:A5.

    Для этого на вкладке Developer (Разработчик) нажмите Visual Basic. Дважды кликните по объекту из списка Microsoft Excel Objects, в котором должен быть сохранён макрос. Введите вот такой код:

    Sub Macro1 ()     For n = 1 To 5        Cells(n, 1) = n     Next n  End Sub

    Сохраните файл. Чтобы выполнить макрос, перейдите View > Macros > View Macros (Вид > Макросы > Макросы), выберите из списка название нужного макроса и нажмите Run (Выполнить).

    Следующий код отображает фразу “Hello World” в окне сообщений Windows.

    Sub MacroName()     MsgBox ("Hello World!")  End Sub

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    В следующем примере мы создаём сообщение с выбором Yes (Да) или No (Нет). Если выбрать вариант Yes (Да), то значение ячейки будет удалено.

    Sub MacroName()     Dim Answer As String        Answer = MsgBox("Are you sure you want to delete the cell values ?",         vbQuestion + vbYesNo, "Delete cell")        If Answer = vbYes Then        ActiveCell.ClearContents     End If  End Sub

    Давайте проверим этот код. Выделите ячейку и запустите макрос. Вам будет показано вот такое сообщение:

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    Если Вы нажмёте Yes (Да), значение в выделенной ячейке будет удалено. А если No (Нет) – значение сохранится.

    Конструкция IF

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

    Sub MacroName()     Dim CellValue As Integer     CellValue = ActiveCell.Value       If CellValue > 20 Then        With Selection.Font           .Color = -16776961        End With     Else        With Selection.Font           .ThemeColor = xlThemeColorLight2           .TintAndShade = 0        End With     End If  End Sub

    Для проверки этого кода выберем ячейку со значением больше 20:

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    Когда Вы запустите макрос, цвет шрифта изменится на красный:

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    При выполнении второго условия шрифт станет синим:

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    Конструкция CASE

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

    Sub MacroName()     Dim CellValue As Integer     CellValue = ActiveCell.Value        Select Case CellValue        Case 60 To 200           MsgBox "The person is old"          Case 30 To 59           MsgBox "The person is adult"           Case 18 To 29           MsgBox "The person is young"           Case 0 To 17           MsgBox "The person is a child"           Case Else           MsgBox "Unknown age"        End Select  End Sub

    Чтобы протестировать этот пример, Вы должны выбрать ячейку со значением и запустить макрос. Если значение выбранной ячейки, к примеру, равно 44, то будет показано вот такое сообщение:

    Руководство и примеры работы с макросами в Excel - Информационные технологии

    Заключение

    Макросы – это отличный способ автоматизировать задачи в Excel. Эта статья показывает лишь немногие примеры того, что можно сделать при помощи макросов.

    Урок подготовлен для Вас командой сайта office-guru.ru
    Источник: https://www.ablebits.com/office-addins-blog/2012/05/03/tutorial-excel-macros/
    Перевел: Антон Андронов
    Правила перепечатки
    Еще больше уроков по Microsoft Excel

    Did you find apk for android? You can find new Free Android Games and apps.

    Добавить комментарий