Главная страница
Навигация по странице:

  • Практическая часть Задание 1. Создание макроса в автоматическом режиме

  • Данные

  • Исходный диапазон

  • Вид  Макрос  Запись макроса

  • Delete ; выберите команду меню Данные => Сортировка и фильтр => Дополнительно

  • Вид  Макрос  Остановить запись

  • Задание 2. Запуск макроса на выполнение

  • Кнопка «Office»  Параметры Excel  Настройка.

  • Выберите команду из…

  • Изменить.

  • Изменение кнопки

  • Назначить макрос

  • Команда Способы осуществления команды

  • Практическая работа. Практическая часть Задание Создание макроса в автоматическом режиме


    Скачать 253.49 Kb.
    НазваниеПрактическая часть Задание Создание макроса в автоматическом режиме
    Дата20.03.2018
    Размер253.49 Kb.
    Формат файлаdocx
    Имя файлаПрактическая работа.docx
    ТипДокументы
    #38933

    Работая в программах Microsoft Office можно заметить, что для получения тех или иных результатов каждый раз выполняется одна и та же последовательность операций. Очевидно, что возникает вопрос: «Можно ли сделать так, чтобы данная последовательность команд выполнялась одним щелчком мыши (одной командой)?».

    Такая записанная последовательность команд называется макрокомандой (или просто макросом).

    При записи макроса программа записывает все действия пользователя, включая ошибочные и лишние. Для записи макросов используется специальный язык программирования Visual Basic for Application (VBA). Начиная с Office 97 язык VBA встроен во все приложения.

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

    Практическая часть

    Задание 1. Создание макроса в автоматическом режиме

    1. Создайте рабочую книгу в Microsoft Excel

    2. Создайте таблицу «Студент» (рис.1)

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-jd2nga.png

    Рис. 1. Таблица «Студент»

    1. Выполните расширенный фильтр по полю «Специальность» с копированием результата на новое место:

      1. скопируйте шапку таблицы в первую строку;

      2. введите в ячейку Е2 одну из специальностей;

      3. перейдите на вкладку Данные и нажмите кнопку Дополнительно(рис.2)

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-vxzajx.png

    Рис. 2. Панель Данные

      1. при этом откроется диалоговое окно «Расширенный фильтр» (рис. 3);

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-ofntlo.png

    Рис.3. Окно «Расширенный фильтр»

      1. в разделе Обработкавыберите скопировать результат в другое место;

      2. в Исходный диапазон определите ячейки исходной таблицы (А4:F14);

      3. в Диапазон условийопределите верхние ячейки A1:F2;

      4. в Поместить результат в диапазонвыберите ячейку справа от таблица (H1);

      5. нажмите кнопку «ОК».

    1. Начните запись макроса, выбрав вкладку Вид  Макрос  Запись макроса. Откроется диалоговое окно «Запись макроса» (рис. 4), в котором необходимо указать параметры макроса:

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-zxxflb.png

    Рис. 4. Окно «Запись макроса»

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

    • Текстовое поле Сочетание клавиш. Можно указать комбинацию клавиш с помощью которой макрос будет запускаться на выполнение. Это имеет смысл делать для часто используемого макроса. Комбинация клавиш – это «CTRL» и какой-нибудь символ. Например: CTRL+a.

    • Список Сохранить в:. В этом списке надо выбрать, где будет храниться макрос. Если выбрать «Эта книга», то макрос запишется в текущей рабочей книге. Вариант «Личная книга макросов» позволит записать макрос в специальной книге под названием Personal.xls, которая открывается при каждом запуске Excel, т.е. макрос будет доступен разным рабочим книгам. Вы можете и не заметить, что книга Personal.xls открыта, т.к. по умолчанию она скрыта. Вариант «Новая книга» заставит Excel открыть новую книгу и сохранить в нее макрос, хотя активной останется прежняя книга и все действия будут применяться к ней.

    • Текстовое поле Описание. В этом поле можно кратко описать назначение макроса и начальные условия его выполнения.

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

      1. выделите ячейки H1:M11;

      2. нажмите клавишу Delete;

      3. выберите команду меню Данные => Сортировка и фильтр => Дополнительно;

      4. заполните диалоговое окно как на рис. 3;

      5. нажмите кнопку «ОК»;

    2. Остановить запись, выполнив команду Вид  Макрос  Остановить запись.

    Теперь ваш макрос готов.

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

    Если выбрать «Относительная ссылка», то действия будут записываться в относительных адресах, т.е. с учетом текущего положения активной ячейки. Каждый щелчок на кнопке переводит режим в противоположный. Такое переключение можно выполнять в любой момент на протяжении записи макроса.

    Созданный макрос будет записан в особой части рабочей книги, называемый модулем. Рабочая книга может содержать несколько модулей. В каждом модуле могут быть записаны несколько макросов. Модуль для записи макроса выбираются автоматически, а при необходимости создается новый. В каждом сеансе работы, если выполняется запись макроса, создается новый модуль. Модули рабочей книги имеют имена ModuleN, где N – порядковый номер модуля.

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

    1. Нажать комбинацию клавиш, назначенную при создании макроса (если комбинация была назначена).

    2. Выполнить команду Вид  Макрос  Макросы. Откроется окно «Макрос», в котором пользователь должен выбрать макрос в списке и щелкнуть на кнопке «Выполнить».

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

    Для этого необходимо:

    1. выполнить команду Кнопка «Office»  Параметры Excel  Настройка. Откроется окно настройки панели инструментов (рис. 5).

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-7skicq.png

    Рис. 5. Окно настройки панели инструментов

    1. В списке Выберите команду из…выберите Макросы.

    2. В левом списке выберите ваш макрос.

    3. Затем щелкните на кнопке Добавить.

    4. В правом списке выберите название вашего макроса и нажмите кнопку Изменить.

    5. В появившемся окне Изменение кнопки(рис. 6) выберите вид кнопки и определите его имя

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-khx5em.png

    Рис. 6. Окно Изменение кнопки

    1. Нажмите кнопку ОК.

    2. Закройте окно Настройка, нажав кнопку ОК.

    Макрос добавиться на панель быстрого доступа (рис. 7). Запустите макрос на выполнения с помощью данной кнопки.

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-wvaaxd.png

    Рис. 6. Панель быстрого доступа

    4. Макрос можно назначить любому графическому объекту, расположенному на рабочем листе. Это может быть рисунок из стандартного набора, автофигура или сгруппированный объект. Для этого:

    1. щелкните на объекте правой кнопкой мыши и в контекстном меню выберите пункт Назначить макрос

    2. в появившемся окне Назначить макрос объектувыберите нужный макрос и нажмите кнопку ОК.

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

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

    Окно редактора VBA

    Редактор Visual Basic (VB-редактор) – это инструмент для создания модулей и просмотра их содержимого, создания и редактирования текста макросов, создания диалоговых окон и т.д.

    VB-редактор приложения Excel аналогичен VB-редакторам других приложений, поддерживающих VBA.

    Открыть окно редактора можно тремя способами.

    • Нажать .

    • Выполнить команду Сервис – Макрос – Макросы, указать название макроса и щелкнуть кнопку «Изменить».

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

    Редактор Visual Basic представляет собой окно приложения с одним меню и набором панелей инструментов, в котором вы получаете доступ к целому ряду дочерних окон, обеспечивающих возможность использования всех средств, необходимых для создания программ (рисунок 1).

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-1xk35f.png

    Рис. 1 Окно редактора VBA

    При запуске VB-редактора на экране появятся следующие окна:

    1. Окно «Project» (Проект). В окне Project отображается древовидная структура, описывающая проект: открытые в данный момент рабочие книги, листы, модули и формы, которые в них содержатся. Например, открытая рабочая книга Книга1.xls содержит три рабочих листа и один лист модуля с текстом макроса.

    1. Окно «Properties» (Свойства). В данном окне отображаются свойства выбранного в данный момент объекта. Свойства можно просматривать и устанавливать для различных объектов проекта, изображенных в окне проекта. Свойства выводятся либо в алфавитном порядке, либо по логическим категориям. Более подробно с этим окном познакомимся немного позже.

    2. Окно «Code» (Редактор кода). В окне Code отображается текст макросов, содержащихся на выбранном листе модуля. Именно в этом окне мы будем читать, редактировать и создавать макросы. У верхней границы окна Code расположены два раскрывающихся списка. Список, расположенный справа, содержит перечень макросов, находящихся в данном модуле и может использоваться для быстрого перехода к нужному макросу.

    Окно VBA содержит собственную строку меню и набор панелей инструментов. Обычно на экране присутствует панель Standart (Стандартная).

    Команды редактора

    Рассмотрим основные команды, необходимые для того, чтобы начать работу в редакторе.

    Таблица 1 Основные команды редактора Visual Basic

    Команда

    Способы осуществления команды

    Закрыть окно

    1. Можно обычным образом, щелкнув на кнопке «Закрыть».

    2. Выполнить команду File (Файл) – Close and Return (Закрыть и Вернуться в окно Excel)

    Выделить текст

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

    Копировать

    Edit (Правка) – Copy (Копировать)

    Вырезать

    Edit (Правка) – Cut (Вырезать)

    Вставить

    Edit (Правка) – Paste (Вставить)

    Отменить команду

    Edit (Правка) – Undo (Отменить)

    Повторить

    Edit (Правка) – Redo (Повторить)

    Показать/спрятать окно проекта

    View (Вид) – Project Explorer (Окно проекта)

    Показать/спрятать окно свойств

    View (Вид) – Properties Window (Окно свойств)

    Вставить новый модуль

    Insert (Вставка) – Module (Модуль)

    Удалить модуль

    1. Выделите в окне «Проект» модуль, который надо удалить.

    2. Выполните File (Файл) – Remove ModuleN (Удалить модуль).

    3. Щелкните на кнопке «Yes», если вы решили сохранить тексты перед удалением (на всякий случай) или «No» для окончательного удаления модуля

    Выполнить макрос

    Run (Запуск) – Run SUB (Запуск подпрограммы)

    Прервать выполнение макроса

    Run (Запуск) – Break (Прервать) комбинация клавиш

    Сбросить значения всех переменных

    Run (Запуск) – Reset (Сброс)

    Командам выполнения макроса (меню Run) соответствуют кнопки на панели инструментов, показанные на рисунке 2 (три кнопки слева направо): ЗапускПрерватьСброс.

    https://studfiles.net/html/2706/1185/html_hu55szyui7.otvi/img-hrg8xy.png

    Рис. 2. Кнопки запуска и останова макроса

    Текст макроса

    В окне редактора кода отображается непосредственно текст макроса (в данном случае, макроса «Специальность») Рассмотрим каждую строку макроса подробнее

    1. Sub Фильтр_специальность()

    2. '

    3. ' Фильтр_специальность Макрос

    4. ' Макрос записан 20.04.2007 (adm)

    5. '

    6. Range("F3:I10").Select

    7. Selection.ClearContents

    8. Range("C3").Select

    9. Range("A3:D10").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

    10. "C1:C2"), CopyToRange:=Range("F3"), Unique:=False

    11. Range("F3").Select

    12. End Sub

    Каждый VBA-макрос начинается с ключевого слова Sub, за которым через пробел следует имя макроса и пустые скобки.

    Ключевое слово – это слово, зарезервированное в VBA для специального использования, в отличие от имени макроса, которое задается пользователем. Ключевые слова не могут быть использованы в качестве имен. Ключевые слова в редакторе обычно отображаются синим цветом.

    Строки с номерами 2, 3, 4, 5 – это строки комментариев, добавленных автоматически. Каждая строка начинается с символа апостроф «’». Все, что записано после апострофа, считается комментарием.

    Комментарий не является частью языка программирования и не содержит выполняемых инструкций. Комментарии служат для пояснения текста макроса. Комментарии в редакторе обычно отображаются зеленым цветом.

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

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

    Далее следует тело макроса, каждая строка которого содержит одну или несколько инструкций языка VBA. VBA-инструкции в макросе соответствуют тем действиям, которые Вы выполняли при записи макроса. Например, четвертому шагу примера макроса соответствуют строки 6, 7, которые соответствуют действиям по удалению старого результата (выделить текущую область, очистить ячейки).

    Далее в строке 8 записана команда, выполняющее выделение ячейки. Строки 9, 10, реализуют расширенный фильтр (выполнить команду Данные – Фильтр – Расширенный фильтр). Если внимательно прочитаете строки 9 и 10, то Вы найдете в них все установленные параметры расширенного фильтра.

    Далее следует переход к области по ее имени.

    Завершается текст макроса обязательной инструкцией End Sub (конец процедуры).

    Для облегчения работы с текстом макроса длинные инструкции можно переносить с одной строки на другую. Признаком переноса инструкции на другую строку является комбинация символов «пробел» и «подчеркивание» в конце строки. Она указывает VBA, что следующая строка является продолжением предыдущей (строка 10 является продолжением строки 9).



    написать администратору сайта