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

  • Макрос и макрорекордер.

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

  • Запуск макроса.

  • Удаление макроса.

  • Создание автоматически выполняемых макрокоманд.

  • Практическое задание 1.

  • Практическое задание 2.

  • Последовательность действий (один из вариантов)

  • Задание 1 для самостоятельной работы

  • Макросы. Большинство пользователей создавая и используя документы Microsoft Office используют стандартные возможности приложений.


    Скачать 292.45 Kb.
    НазваниеМакросы. Большинство пользователей создавая и используя документы Microsoft Office используют стандартные возможности приложений.
    Дата17.03.2022
    Размер292.45 Kb.
    Формат файлаpdf
    Имя файлаMakrosy_nachalo.pdf
    ТипДокументы
    #400758

    1
    МАКРОСЫ.
    Большинство пользователей создавая и используя документы Microsoft
    Office используют стандартные возможности приложений. Однако Office дает широкие возможности для автоматизации работы с документами – это программирование в VBA и использование макросов.
    VBA, язык программирования Visial Basic for Applications, - язык программирования, встроенный в приложения Office, используемый для создания макросов.
    Макрос и макрорекордер.
    Вместо повторения однообразных команд в MS Office можно создавать макрос, который будет выполнять эту последовательность команд автоматически. Макрос позволяет ввести одиночную команду, выполняющую ту же задачу, что и при выполнении группы команд.
    Макрос – это программа, написанная на VBA. VBA – специальная версия Visial Basic (for Application).
    В Office существует 2 способа создания макроса:
     запись макрорекордером действий пользователя
     открытие окна VBA и ввод операторов VBA
    Чаще всего пользователь использует VBA для коррекции макроса, записанного рекордером.
    Для работы с макросами в MS Office выводим на ленту вкладку
    РАЗРАБОТЧИК (кнопка OFFICE/ ПАРАМЕТРЫ Word / НАСТРОЙКА
    ЛЕНТЫ).

    2
    Пользователю необходимо продумать стартовые условия для
    макроса, например, если надо что-то делать с выделенным фрагментом,
    то перед записью или запуском следует выделить фрагмент.
    Запись макроса.
     вкладка РАЗРАБОТЧИК/ЗАПИСЬ МАКРОСА, даем имя макросу.
    Имя не должно содержать пробелы, начинаться с буквы, не содержать спец.символы. максимальная длина имени – 80 символов. Если созданному макросу присваивается имя, совпадающее с именем встроенного макроса Microsoft Word, то существующий макрос заменяется новым.
     выполняем команды
     вкладка РАЗРАБОТЧИК/ОСТАНОВИТЬ ЗАПИСЬ
    Обычно
    , макрос доступен для шаблона Normal.dot, он автоматически сохраняется вместе c ним.
    Запуск макроса.
     вкладка РАЗРАБОТЧИК/МАКРОСЫ, выбираем нужный и
    ВЫПОЛНИТЬ.

    3
    Назначение макросу кнопки на панели быстрого доступа и/или
    сочетания клавиш.
     или кнопка ФАЙЛ/ ПАРАМЕТРЫ /НАСТРОЙКА
    ЛЕНТЫ/МАКРОСЫ/добавить
    При назначении макросу сочетания клавиш, следует помнить, что в Office зарезервированы многие сочетания и найти «свободное» сочетание непросто.
    Удаление макроса.
     вкладка РАЗРАБОТЧИК/МАКРОСЫ, выбираем нужный и
    УДАЛИТЬ.
    Изменение текста макроса.
    При записи макроса рекордер сохраняет последовательность текстовых инструкций на VBA. Это текстовое описание называется исходным кодом.
    Его можно просмотреть и исправить:
     вкладка РАЗРАБОТЧИК/МАКРОСЫ, выбираем нужный и
    ИЗМЕНИТЬ.
    Для запуска макроса из редактора VBA: кнопка RUN (►)
    Создание автоматически выполняемых макрокоманд.
    В Word предусмотрены 5 специальных имен для макрокоманд
    Имя
    Назначение
    AutoExec
    Выполняется при запуске Word
    AutoNew
    Выполняется при создании нового файла
    AutoOpen
    Выполняется при открытии файла
    AutoClose
    Выполняется при закрытии файла
    AutoExit
    Выполняется при выходе из Word
    VBA – программы состоят из простой последовательности действий: программа получает доступ к объекту, придает ему свойства, производит с ним действия.
    !!!!!!
    Про объекты
    Каждый документ, абзац, … – это объекты. Например, объект Selection
    – выделенный фрагмент. Сам Word – объект Appication.(см. приложения 2,3)
    Каждый объект имеет свои характеристики – свойства.
    Многие объекты выполняют действия, которые называются методами.
    Например,
    ActiveDocument.Close
    (объект - активный документ, метод - закрыть)

    4
    В соответствии с синтаксисом VBA разделитель- точка.
    Обычно: объект, точка, метод и/или свойства (через точку)
    Правая мышь на объекте – список методов, свойств (List
    Properties/Methods)
    Последовательность With ….. End With позволяет указать несколько методов/свойств для одного объекта, не повторяя многократно его имя.
    Практическое задание 1.
    Запишем макрос с именем «мой_первый_макрос», в который запишем следующие команды:

    Альбомная ориентация страницы

    Масштаб просмотра – 33%
    В результате получим следующий код
    Sub мой_первый_макрос()
    '
    ' мой_первый_макрос Макрос '
    Макрос записан 03.12.07
    '
    With
    ActiveDocument.PageSetup
    .LineNumbering.Active =
    False
    .Orientation = wdOrientLandscape
    .TopMargin = CentimetersToPoints(1.5)
    .BottomMargin = CentimetersToPoints(3)
    .LeftMargin = CentimetersToPoints(2)
    .RightMargin = CentimetersToPoints(2)
    .Gutter = CentimetersToPoints(0)
    .HeaderDistance = CentimetersToPoints(1.25)
    .FooterDistance = CentimetersToPoints(1.25)
    .PageWidth = CentimetersToPoints(29.7)
    .PageHeight = CentimetersToPoints(21)
    .FirstPageTray = wdPrinterDefaultBin
    .OtherPagesTray = wdPrinterDefaultBin
    .SectionStart = wdSectionNewPage
    .OddAndEvenPagesHeaderFooter =
    False
    .DifferentFirstPageHeaderFooter =
    False
    .VerticalAlignment = wdAlignVerticalTop
    .SuppressEndnotes =
    False
    .MirrorMargins =
    False
    .TwoPagesOnOne =
    False
    .GutterPos = wdGutterPosLeft
    End With
    ActiveWindow.ActivePane.View.Zoom.Percentage = 33
    End Sub
    Это комментарии, начинаются с ', комментарии- зеленые
    Sub/ End Sub – начало/конец макроса, все ключевые слова
    VBA- синие
    With/ End With – несколько действий для одного объекта.
    Отступы для удобства чтения

    5
    Можно исправить текст этого макроса, например,
     изменим процент, например 33 на 42
     изменим поля
     заменим
    False на True в строке
    .LineNumbering.Active
    =
    False
    (будет автонумерация строк)
     заменим в строке .Orientation = wdOrientLandscape на
    wdOrientPortrait
    , ориентация бумаги будет книжная
    После сохранения данный макрос можно вновь запустить для любого другого документа.
    Практическое задание 2.
    Создадим макрос создающий окно сообщений при открытии файла.
    MessageBox - окно сообщения, которое появляется на экране.
    Для вывода MessageBox при открытии какого-либо файла MS Word необходимо создать макрос с именем AutoOpen и внутри него вызвать функцию msgbox. Это будет выглядеть так :
    Sub AutoOpen()
    ' Данная функция вызывается при открытии документа
    '
    ' Выводим MessageBox
    MsgBox
    "Здравствуй, дружок!"
    '
    End Sub
    Последовательность действий (один из вариантов):
     вкладка РАЗРАБОТЧИК/МАКРОСЫ, даем любое имя и СОЗДАТЬ

    В окне редактора VBA, меняю имя и печатаем текст программы на
    VBA

    Сохраняем

    Запускаем
    Теперь при открытии каждого документа, будем получим сообщение.
    Команда для вывода окна сообщений имеет вид:
    MsgBox (promt, button,title,helpfile)

    6
    • promt – обязательный аргумент, определяющий текст, который появится в окне сообщения
    • button – необязательный аргумент, определяющий тип окна сообщения, наличие кнопок Ок, Отмена, Стоп, Пропустить и т.д
    • title – необязательный аргумент, определяющий заголовок окна
    • helpfile– необязательный аргумент, определяющий какой файл справки будет открыт, если пользователь нажмет F1
    Задание 1 для самостоятельной работы
    Создать макрос в Excel изменяющий шрифт в активной ячейке в зависимости от ее значения.
    Sub Макрос100()
    '
    ' Макрос100 Макрос
    '
    Dim CellValue As Integer
    CellValue = ActiveCell.Value
    If CellValue > 20 Then
    With Selection.Font
    .Color = vbRed
    .FontStyle = "полужирный"
    End With
    Else
    With Selection.Font
    .Color = vbGreen
    .Size = 19
    End With
    End If
    '
    End Sub

    7
    Задание 2 для самостоятельной работы
    Создание простого диалогового окна.
    Для создания диалогового окна необходимо создать визуальный объект, именуемый формой. Форма – аналог окна, на которое можно помещать элементы управления (кнопки, переключатели, флажки и т.п). Каждая форма является частью пользовательского интерфейса. Каждая форма является объектом,и, в свою очередь, содержит множество объектов, каждым из которых можно управлять по отдельности.
    Создание формы:

    Окно VBA (ALT+F11)
     INSERT/New Form или UserForm (вставка новой формы)

    В окне Properties можно настроить свойства формы, например свойство
    Caption позволяет дать форме имя

    Используя панель ToolBox устанавливаем на форму элементы управления:
    • Label –
    надпись
    • CommandButton- командная кнопка для выполнения какого-либо действия
    • TextBox - текстовое поле
    • Image – рисунок
    • ChtckBox – флажок

    Т.д.

    Настраиваем работу каждого элемента. Например, 2 щелчка на
    CommandButton даст возможность написать те операторы VBA, которые должны выполняться при нажатии на эту кнопку.
    Чтобы такое диалоговое окно появлялось при запуске макроса, необходимо добавить в макрос следующие строки:
    Load UserForm1
    UserForm1.Show
    Т.к. освоение VBA требует много времени и знаний основ алгоритмизации, пользователи обычно записывают команды Word с помощью макрорекордера, затем исправляют и/или дописывают макрос.


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