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

  • Cвойство объекта Range

  • Лекции VBA. Можно выделить следующие разновидности макросов


    Скачать 314.53 Kb.
    НазваниеМожно выделить следующие разновидности макросов
    Дата29.10.2022
    Размер314.53 Kb.
    Формат файлаdocx
    Имя файлаЛекции VBA.docx
    ТипПрограмма
    #760802
    страница1 из 22
      1   2   3   4   5   6   7   8   9   ...   22

    Макросы


    Макрос — это программа, состоящая из списка команд, которые должны быть выполнены приложением. Макрос служит для объединения нескольких различных действий в одну процедуру, которую вы можете легко вызвать. Этот список команд состоит в основном из макрокоманд, которые тесно связаны с командами приложения, в котором вы создаете макрос — т. е. с командами Word, Excel или других приложений Microsoft Office. Запись макросов позволяет не просто запомнить последовательность вызовов команд меню, нажатий на кнопки мыши и ввод данных с клавиатуры, но и перевести эти действия на объектно-ориентированный язык программирования Visual Basic для приложений (Visual Basic for Applications, в дальнейшем просто VBA) и сохранить их в виде готовой к вы- полнению программы.

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

    Можно выделить следующие разновидности макросов:

    • Командные макросы — это наиболее распространенные макросы, обычно состоящие из операторов, эквивалентных тем или иным командам меню или параметрам диалоговых окон. Основным предназначением такого макроса является выполнение действий, аналогичных командам меню — т. е. изменение окружения и основных объектов приложения

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

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

    Cвойство объекта Range

    Свойство Range возвращает объект Range, определяемый аргументами.

    Используются два разных способа записи свойства Range.

    Первый способ object.Range(Cell1) Второй способ object.Range(Cell1 [,Cell2])

    • object - ссылка на объект, например, на рабочий лист или на интервал ячеек. Ссылка необязательна. По умолчанию используется активный лист;

    • Cell1, Cell2 - аргументы для задания интервала ячеек. Cell1 - указание обязательно при обоих способах записи свойства Range.

    Первый способ


    Аргумент Cell1 задает интервал ячеек произвольного размера.

    ВАЖНО

    • Могут использоваться имена, определенные в таблице, или координаты ячеек, столбцов, строк или интервалов.

    • Координаты задаются в стиле A1.

    • Координаты и имена заключаются в кавычки.

    • При задании интервалов координаты левого верхнего угла и правого нижнего угла интервала разделяются двоеточием.

    • Для задания несмежных интервалов используется запятая.

    • Для задания пересечения интервалов используется пробел. Примеры записи оператора Range (1 способ)

    Запись

    Возвращаемый объект

    ActiveSheet.Range("A1:A10")

    интервал ячеек A1:A10 на активном листе

    Range("A:B")

    столбцы A:B

    Range("налог")

    интервал с именем налог

    Range("1:3")

    строки с первой по третью

    Range("A1:C2, B10:D24")

    объединение двух несмежных интервалов A1:C2 и B10:D24

    Range("A1:C10 B10:D24")

    пересечение двух интервалов A1:C10 и B10:D24, т.е. интервал B10:C10
      1   2   3   4   5   6   7   8   9   ...   22


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