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

Создание макросов в приложении Microsoft Excel
Урок: «Создание макросов  в приложении Microsoft  Ехсеl».
Образовательная:
Сформировать у учащихся умение применять макросы при работе с электронными таблицами;
Развивающая:
Пробудить инициативу;
Развить устойчивый интерес к информационным технологиям;
Развить познавательный интерес;
Развить память, мышление;
Воспитательная:
Воспитать самостоятельность, ответственность.

 На этом уроке мы рассмотрим следующие вопросы:
Понятие макроса.
Запись простых макросов.
Выполнение макросов.
Назначение макроса графическим изображениям.
Удаление макросов из списка макросов.
Ограниченность макросов.

Понятие макроса.
Основное назначение макросов - это автоматизация работы пользователя.        
Макрос - это имеющая имя последовательность заданных пользователем команд, и действий хранящаяся в форме программы на языке VВА, которую может выполнить 
приложение.
На сегодняшний день Visual Basic for Application (VВА) - один из самых простых в изучении и применении языков программирования для автоматизации приложений, входящих в пакет Microsoft Offic. 
Запись макросов в приложении Ехсеl.
Для работы с макросами в приложении Ехсеl  имеется специальная панель.
Меню: Вид- Панель инструментов - Visual Basic.
 
Рисунок1.
Общий алгоритм записи макроса:
Нажать на кнопку «Запись макроса» на панели Visual Basic
В диалоговом окне «Запись макроса» дать имя макросу.
Первым символом имени макроса должна быть буква. В имени макроса не опускается использование пробелов.
 
Рисунок2.
Выполнить действия, которые нужно записать.
Нажать кнопку «Остановить запись» на панели  Visual Basic.
Задание I
Рассмотрим процедуру записи макросов на примере очень простого макроса, который изменяет шрифт и цвет в выделенном диапазоне ячеек. Эти действия в Ехсеl можно выполнить   многими  различными   способами  (например,   применение   стилей, автоформатирования и т.д.), этот пример продемонстрирует последовательность действий пользователя, необходимые для записи макроса).

Рисунок 3.
1. В ячейку А4 введите ваше имя, в ячейку А5 введите фамилию, в ячейку А6 - город, где вы родились, в ячейку А7 - название страны.
2. Установите курсор в ячейке А4.
3. На панели   Visual Basic нажмите кнопку «Запись макроса» Рисунок4.
4. Введите название макроса «ЦветШрифт» и нажмите клавишу «ОК». На экране появится панель инструментов «Остановить запись»  Рисунок 5.
ВНИМАНИЕ!  КАЖДОЕ ВАШЕ ДЕЙСТВИЕ ЗАПИСЫВАЕТСЯ.
5. Выполните команду Формат – Ячейки - Шрифт - Размер 11- Цвет  красный - ОК.
6. Щелкните на кнопке «Остановить запись» на панели Visual Basic. Запись макроса завершена.
Выполнение макросов.
При выполнении макроса Ехсеl повторяет те же действия, которые вы выполнили в процессе его создания. Продолжим работу с созданным макросом.
1.Установить курсор в ячейку А4.
2.Выполнить команду Сервис-Макрос-Макросы
 
Рисунок 6.
3.Выделите макрос ЦветШрифт и Выполнить.
4.Аналогично с ячейками А3 и А4.
Назначение макроса графическим изображениям.
Продолжим работу с заданием I.
1. Используя панель Рисование, нарисуйте на листе любую автофигуру.           
2.Щелкните правой кнопкой мыши на изображении и в открывшемся контекстном меню выберите команду Назначить макрос.Отобразится диалоговое окно Назначить макрос объекту.
3. Выберите макрос «ЦветШрифт» и подтвердите выполнение операции.
4. Щелкните вне графического изображения, чтобы снять выделение с объекта.
5. Введите число и проверте выполнение макроса.

Рисунок7
Удаление макросов из списка макросов.
Для того, чтобы удалить макрос из списка макросов диалогового окна Макросы надо:
1. Выполнить команду Сервис - Макрос - Макросы. 
2. Выделить макрос, подлежащий удалению и щелкнуть по кнопке «Удалить».
3. Подтвердить выполнение операции в специальном окне, которое появится.
Ограниченность макросов
В Ехсеl многие процедуры можно выполнить с помощью макросов, но макросы имеют и ограничения. С помощью макросов нельзя выполнить различные действия в зависимости от содержимого ячейки, нельзя вызвать некоторые диалоговые окна Ехсе1, например, сохранить документ, нельзя отобразить и использовать пользовательские формы ввода данных.
Эти ограничения приводят к необходимости создания программ на VВА. 
Задания для самостоятельного выполнения.
1.Введите в диапазон F1:F5 любые числа. Создайте макрос для очистки диапазона F1:F5. С помощью панели инструментов «Рисование» создайте кнопку с надписью «Очистить». Назначьте кнопке созданный макрос.
2. Введите в диапазон С2:С6 фамилии ваших друзей, а в диапазон D2:D6 занесите их телефоны.
Создайте две кнопки с названиями «Выделенное скопировать» и «Вставить». По нажатию на первую кнопку выделенный диапазон должен копироваться в буфер обмена. По нажатию на вторую кнопку информация из буфера обмена должна выводиться в текущую ячейку.
Задание II. Текст по столбцам
В столбец А введите исходные данные:

Рисунок 8. 

Рисунок 9.
Необходимо номера и телефоны разнести по разным столбцам.
В Ехсеl существует специальная команда для выполнения этой операции
Данные - Текст по столбцам.
Технология работы:
Выделите все ячейки столбца А, где занесены исходные данные;
Выполните команду Данные-Текст по столбцам, появится диалоговое окно. 
В этом окне укажите формат данных –« с разделителями». Нажмите кнопку «Далее».
Во втором диалоговом окне укажите символом – разделителем является «пробел» Нажмите кнопку «Далее».
В третьем окне установите для каждого столбца данных формат данных
( текстовой) и     «Поместить в – щелкните по нужной ячейки ( =$C$1 )»- первый столбец,    (=$D$1) – второй столбец – «Готово»
Создайте макрос для разбора данных по ячейкам. Привяжите макрос к автофигуре. Создайте макрос для очистки ячеек, в которые заносятся разобранные данные.
ЗаданиеIII. Подведение промежуточных итогов с применением макросов.
Повторим Ехсеl, подведем промежуточные итоги, используя возможности программы, затем запишем макросы, которые будут автоматически, а не вручную подводить промежуточные итоги и убирать их с листа.

Рисунок10.
Технология работы.
Откройте лист «Итоги» 
В столбце «Сумма» значение рассчитайте по формуле
Отсортируйте таблицу по столбцу «Товар».
В процессе подготовки отчетов часто требуется подводить итоги. Возможности Ехсel позволяют автоматически вносить промежуточные итоги в таблицы, не задавая вручную области или формулы для них. Иногда требуется выделять и показывать на экране только часть информации из созданного отчета. В зависимости от цели отчета, в него может быть включена полная информация рабочего листа, только промежуточные и общие итоги  или только общие итоги.
Рассмотрим использование команды «Итоги» на нашем примере. Подсчитаем, на какую сумму было продано отдельно ксероксов и отдельно факсов.
1.Установим курсор на любую ячейку отсортированной таблицы.
2.Выполним команду Данные-Итоги. В появившемся диалоговом окне «Промежуточные итоги» в строке При каждом изменении ввыберем из открывшегося списка название графы «Товары», в строке Операция - функцию Сумма, в строке Добавить итоги по - выберем название графы «Сумма» - ОК
Создание макросов.
Установите курсор на исходную таблицу. Если таблица не отсортирована ,отсортируйте по полю «Товар» Данные-Сортировка.
1.Для создания 1 макроса активизируйте любую ячейку таблицы и  MacroRecorde  с помощью команды  Сервис-Макрос-Начать запись. Назначте имя макроса «Итоги»- ОК
2.Выполним команду Данные-Итоги
В диалоговом окне выберете в строке
При каждом изменении в выберем из открывшегося списка название графы «Товары», в строке Операция - функцию Сумма, в строкеДобавить итоги по - выберем название графы «Сумма» - ОК 
3.Активизируйте опцию Итоги под данным. Нажмите клавишу ОК
Остановите запись макроса, нажав на кнопку Остановить запись.
Просмотрите записанную программу. Для этого выполните команду Сервис-Макрос-Макросы.    Выделите макрос «Итоги» и нажмите кнопку Изменить. Это вызовет появление главного окна редактора VВА с текстом записанного макроса .
4. Для создания 2-ого макроса «Убрать промежуточные итоги»:
Активизируйте MacroRecorde с помощью команды Сервис-Макрос-Начать запись. Появится диалоговое окно «Запись макроса». Назначить имя макроса «Убратьитоги» Установите курсор в исходную таблицу. Выполните команду ДанныеИтоги. В появившемся окне щелкнуть по кнопке «Убрать все».Остановите запись макроса, нажав на кнопку Остановить запись.
         На листе «Итоги» создадим кнопки и привяжем к ним созданные макросы .

Рисунок11.
Подведение итогов урока: 
Как автоматизировать действия в приложениях.
Дать понятие Макроса.
Перечислить порядок записи простых Макросов               
Выполнение Макросов.
Назначение Макроса графическим объектам.
Ограниченность Макросов.
Попробуйте создать Макросы в MicrosoftWord.
Используемая литература:
Панфилова Т. «MS EXCEL и VBA»;
Угринович Н. «ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»
Рисунок 2