Объекты Excel. Основы excel vba


Основы vba

Visual Basic For Application (VBA) – это сочетание одного из самых простых языков программирования и всех вычислительных возможностей табличного процессора Excel.

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

В результате своей эволюции Visual Basic превратился в (почти) объектно-ориентированный язык программирования.

Объекты – это естественные детали VBA-ландшафта. Посредством объектов вы получаете доступ к функциональным возможностям VBA-приложения.

С практической точки зрения объект – это просто именованный элемент, имеющий:

  • свойства, то есть установки, которые вы можете проверить или изменить;

  • методы, то есть действия, которые объект может выполнить, если программа попросит об этом;

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

Прежде чем программировать на VBA, следует запустить табличный процессор Excel. Редактор Visual Basic является командным центром для работы в VBA. Вызов редактора Visual Basic осуществляется при помощи команды Сервис – Макрос – Редактор Visual Basic главного меню Excel.

Для написания программы необходимо создать модуль VBA и открыть окно его программного кода при помощи команды Вставка – Модуль.

В результате этих действий на экране появится окно редактора Visual Basic (рис. 1).

Вокне программного кода печатается составленная программа, а затем запускается при помощи кнопкиЗапуск макроса или команды меню Запуск – Запуск программы. Также выполнить программу можно, нажав клавишу [F5].

При составлении программ приходится сталкиваться с такими понятиями, как оператор, процедура, модуль.

Оператор – это наименьшая способная выполняться единица VBA-кода. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе. У допустимого оператора много сходства с законченным предложением – оператор должен содержать правильный набор “частей речи”, иначе это не оператор вообще.

Процедура – это наименьшая единица программного кода, на которую можно ссылаться по имени. Это также наименьшая единица программного кода, которая может выполняться независимо. VBA распознает два главных типа процедур: Sub и Function. Любая процедура содержит один или более операторов, помещенных между двумя специальными операторами: объявлением процедуры в начале и оператором завершения процедуры в конце (End Sub или End Function).

Модуль – это именованная единица, состоящая из одной или нескольких процедур, а также объявлений, относящихся ко всем процедурам в модуле.

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

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

studfiles.net

Основы программирования наvba(visualbasicforapplication)

Visual Basic for Application – это объектно-ориентированный язык программирования высокого уровня, являющийся одним из диалектов очень популярного языка программирования Visual Basic. VBA – это набор средств для создания ваших собственных программ и для подгонки имеющихся приложений под запросы пользователя, ведь приложение, которое легко модифицировать, чтобы оно отвечало нужным требованиям, обладает большей привлекательностью. Совместное использование средств интеграции приложений, Visual Basic и других языков программирования и VBA позволяет создать полностью автоматизированные системы, а процесс разработки таких систем занимает на порядок меньше времени, чем при помощи традиционных языков программирования.

VBA является встроенным языком программирования приложений MS Office, его можно применить в Excel, Access, Word. Особенностью VBA является то, что при создании приложения за основу берется документ: нельзя создать приложения независимо от документа (рабочей книги в Excel, документа в Word).

VBA предоставляет возможность непосредственной работы с объектами MS Office. При открытии приложения MS Office автоматически активизируется объект Application, определяющий само приложение, и все встроенные в него объекты. Это позволяет эффективно использовать его для автоматизации деятельности, связанной с обработкой различных типов документов, в том числе таблиц Excel.

Использование VBA в Microsoft Excel

VBA позволяет существенно расширить возможности EXCEL. С помощью VBA можно легко и быстро создавать различные приложения, даже не являясь специалистом в области программирования. VBA имеет графическую инструментальную среду, позволяющую создавать экранные формы и управляющие элементы. С его помощью можно создавать свои собственные функции для Excel, вызываемые мастером функций, разрабатывать макросы, создавать собственные меню и многое другое.

Редактор VBA активизируется из Excel одним из следующих способов:

  • командой меню Сервис → Макрос→ Редактор Visual Basic;

  • комбинацией клавиш Alt+ F11;

  • кнопкой панели инструментов Visual Basic .

Вернуться из редактора VBA в приложение можно по комбинации клавиш Alt+ F11, по команде View→Microsoft Excel или через панель задач.

Знакомство с VBA мы рекомендуем начинать с создания макросов, когда сама программа Excel записывает выполняемые команды и генерирует программный код в виде процедуры. Между макросом, который создается в процессе записи, и VBA-программой, код которой мы вводим вручную, принципиальной разницы нет. В дальнейшем процедуру макроса можно модифицировать, добавляя новые команды или удаляя лишние. Тщательный разбор команд поможет освоить принципы языка VBA, а практическое написание программ значительно ускорит процесс изучения (подробнее о макросах см.в разделе Макросы).

Структура приложения Excel

При открытии рабочей книги автоматически активизируется объект Application, определяющий само приложение, и все встроенные в него объекты. Этот объект находится на вершине иерархической структуры. Приложение включает «Рабочие книги» (Workbooks) и различные системы надстройки. В свою очередь, рабочие книги содержат «Рабочие листы» (Sheets) и другие объекты. Наконец, «Рабочие листы» включают самый важный для нас объект – «Диапазон ячеек» (Range).

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

studfiles.net

Основы VBA

Количество просмотров публикации Основы VBA - 422

Visual Basic For Application (VBA) - ϶ᴛᴏ сочетание одного из самых простых языков программирования и всœех вычислительных возможностей табличного процессора Excel.

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

В результате своей эволюции Visual Basic превратился в объектно-ориентированный язык программирования.

Объекты - ϶ᴛᴏ естественные детали VBA-ландшафта. Посредством объектов можно получить доступ к функциональным возможностям VBA-приложения.

С практической точки зрения объект - ϶ᴛᴏ просто именованный элемент, имеющий:

· свойства, то есть установки, которые можно проверить или изменить;

· методы, то есть действия, которые объект может выполнить, в случае если программа попросит об этом;

· события, то есть возможные для объекта ситуации, на которые он может ответить заранее определœенными действиями.

Прежде чем программировать на VBA, следует запустить табличный процессор Excel. Редактор Visual Basic является командным центром для работы в VBA. Вызов редактора Visual Basic осуществляется при помощи команды Вид -Макросы – Макросыглавного меню Excel.

В результате этих действий на экране появится окно редактора Visual Basic (рис. 1).

В окне программного кода печатается составленная программа, а затем запускается при помощи кнопки Запуск макроса или команды меню Запуск – Запуск программы. Также выполнить программу можно, нажав клавишу [F5].

При составлении программ приходится сталкиваться с такими понятиями, как оператор, процедура, модуль.

Оператор - ϶ᴛᴏ наименьшая способная выполняться единица VBA-кода. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе. У допустимого оператора много сходства с законченным предложением – оператор должен содержать правильный набор “частей речи”, иначе это не оператор вообще.

Процедура - ϶ᴛᴏ наименьшая единица программного кода, на которую можно ссылаться по имени. Это также наименьшая единица программного кода, которая может выполняться независимо. VBA распознает два главных типа процедур: Sub и Function. Любая процедура содержит один или более операторов, помещенных между двумя специальными операторами: объявлением процедуры в начале и оператором завершения процедуры в конце (End Sub или End Function).

Модуль - ϶ᴛᴏ именованная единица, состоящая из одной или нескольких процедур, а также объявлений, относящихся ко всœем процедурам в модуле.

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

Читайте также

  • - ОСНОВЫ РАСЧЕТА АВТОМОБИЛЯ

    КОНСТРУКЦИЯ, РАСЧЕТ И ПОТРЕБИТЕЛЬСКИЕ СВОЙСТВА АВТОМОБИЛЕЙ Условия перевозки пассажиров. Порядок продажи билетов. Продажа проездных документов производится с помощью терминала АСО экспресс, о 45 суток и до отправления поезда из пункта формирования поезда... [читать подробнее].

  • - Основы синтеза планетарных механизмов

    ЛЕКЦИЯ 18 Основы синтеза планетарных механизмов. Проектирование однорядного планетарного механизма и механизма со смешанным зацеплением. Под синтезом будем понимать определение чисел зубьев планетарных механизмов при условии, что зубчатые колеса нулевые, а... [читать подробнее].

  • - Основы расчета на контактную прочность и изгиб конической передачи

    Общая характеристика конических передач Конические передачи сложнее цилиндрических, требуют периоди­ческой регулировки. Для нарезания зубчатых конических колес необхо­дим специальный инструмент. Шестерня закрепляется консолью, при этом увеличивается... [читать подробнее].

  • - Структура и основы организации ремонтно-обслуживающей базы агропромышленного комплекса

    Планирование – важнейшая составная часть системы хозяйствования, состоящая в разработке, реализации планов и контроль за их выполнением. В современных условиях, когда рыночная экономика вынуждает наших сограждан более требовательно и даже прагматично относиться к... [читать подробнее].

  • - Глава 14.Основы кинематического анализа механизмов

    Задачи и методы кинематического анализа механизмов. Масштабные коэффициенты Кинематический анализ механизма состо­ит в определении движения его звеньев по заданному движению на­чальных звеньев. При этом считается известной кинематическая схема механизма, т.е. его... [читать подробнее].

  • - Основы микропроцессорной техники

    Глава 9. Типовая схема микропроцессорной системы. Если вы внимательно прочитали предыдущие главы и поняли все, о чем в них говорится, то теперь можно приступать к новому этапу. Рассмотрим более детально как устроено типичная микропроцессорная система. Посмотрим на... [читать подробнее].

  • - ОСНОВЫ АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ

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

  • - Основы автоматики

    А.С.Гордеев «Допущено Учебно-методическим объединением вузов по агроинженерному образованию в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению «Агроинженерия»     Мичуринск – наукоград РФ УДК 629.7.05.06:531.781 ... [читать подробнее].

  • - Тема 4.2. Основы устройства лифтов, систем электроснабжения и слабых токов

    Тема 4.1. Основы устройства санитарно-технических систем РАЗДЕЛ 4. Инженерное оборудование зданий Тема 3.6. Лестницы, галереи и балконы Тема 3.5. Окна и двери Тема 3.4. Покрытия зданий Тема 3.3. Перекрытия и полы Тема... [читать подробнее].

  • - Тема 1.11 Основы проектирования гражданских зданий

    Тема 1.10 Полы Тема 1.9 Окна и двери Тема 1.8 Перегородки Тема 1.7 Лестницы Тема 1.6 Покрытия (крыши) Тема 1.5 Перекрытия и подвесные потолки Понятия о перекрытиях. Классификация перекрытий по месторасположению в здании,... [читать подробнее].

  • referatwork.ru

    Основы программирования на языке Visual Basic for Applications (VBA). Модель объектов MS Excel.

    Количество просмотров публикации Основы программирования на языке Visual Basic for Applications (VBA). Модель объектов MS Excel. - 550

    В модели объектов Excel имеется более 100 объектов. Наиболее часто используемыми объектами Excel являются объекты Application, Workbooks и Workbook, Worksheets и Worksheet, Range, Selection.

    Коллекция представляет собой объект, содержащий несколько других объектов, как правило, одного и того же типа.

    Объект Workbooks содержит всœе открытые объекты Workbook (рабочая книга).

    Доступ к заданному элементу коллекции осуществляется либо по номеру, либо по имени.

    К примеру, Worksheets(1) обозначает первый рабочий лист активной книги, а Worksheets(“Лист1”) - рабочий лист с именем Лист1.

    Методы и Свойства

    Объект.Метод

    Пример: Application.Quit

    Объект.Свойство = ЗначениеСвойства

    Примеры: Application.Caption = “Пример”

    MsgBox Worksheets.Count

    Полная ссылка на объект состоит из ряда имен вложенных последовательно друг в друга объектов. Их имена в данном ряду разделяются точками. Ряд начинается с объекта Application и заканчивается именем самого объекта.

    Пример: Application.Workbooks(“Архив”).Worksheets(“Продажа”).Range(“A1”)

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

    ‣‣‣ В случае если программа выполняется в Excel, то Workbooks(“Архив”).Worksheets(“Продажа”).Range(“A1”)

    ‣‣‣ В случае если рабочая книга Архив является активной, то ссылку можно сократить: Worksheets(“Продажа”).Range(“A1”)

    ‣‣‣ В случае если рабочий лист Продажа активен, то Range(“A1”)

    Объект Application - ϶ᴛᴏ главный (корневой) объект в иерархии объектов Excel, представляет само приложение Excel. Он имеет огромное число свойств и методов, позволяющих установить общие параметры приложения Excel.

    Свойства объекта Application

    ‣‣‣ ActiveWorkbook (активная рабочая книга)

    ‣‣‣ ActiveSheet (активный рабочий лист)

    ‣‣‣ ActiveCell (активная ячейка)

    ‣‣‣ ActiveChart (активная диаграмма)

    Пример:

    With ActiveCell

    .Font.Bold = True

    .Value = “Отчет за Май”

    End With

    Caption – Возвращает или устанавливает текст из заголовка главного окна Excel. Установка значения свойства равным Empty возвращает заголовок, используемый по умолчанию.

    1. Application.Caption = “Отчет за 2000 год”
    2. Application.Caption = Empty

    Метод Quit – Закрывает приложение.

    Пример: Application.Quit

    После объекта Application в иерархии объектов Excel следует коллекция Workbooks, которая содержит объекты Workbook. Объект Workbook представляет собой рабочую книгу Excel. Все открытые в Excel рабочие книги включены в коллекцию Workbooks.

    Свойства коллекции Workbooks и объекта Workbook

    ‣‣‣ Count - возвращает число объектов коллекции Workbooks.

    ‣‣‣ Worksheets – возвращает коллекцию всœех рабочих листов книги.

    ‣‣‣ Charts – возвращает коллекцию всœех диаграмм книги (которые не внедрены в рабочие листы)

    Методы коллекции Workbooks и объекта Workbook

    ‣‣‣ Activate - активизирует рабочую книгу.

    ‣‣‣ Add – создает новый объект в коллекции Workbooks.

    ‣‣‣ Close –закрывает книги.

    ‣‣‣ MsgBox Workbooks.Count

    ‣‣‣ Workbooks(“Отдел кадров”).Activate

    ‣‣‣ Workbooks(1).Close

    ‣‣‣ Workbooks.Close

    Обработка событий объекта Workbook

    1. Перейти в редактор VBA;
    2. В окошке Project Explorer выбрать объект ЭтаКнига и перейти в окошко кода для этого объекта;
    3. В верхнем левом списке выбрать объект Workbook;
    4. В верхнем правом списке выбрать крайне важно е событие.

    Коллекция Worksheets включает в себя множество всœех объектов Worksheet (рабочий лист) в рабочей книге. В иерархии Excel объект Worksheets идет сразу после объекта Workbook.

    Свойства коллекции Worksheets и объекта Worksheet

    ‣‣‣ Name – возвращает или устанавливает имя рабочего листа.

    ‣‣‣ Visible – возвращает True, в случае если объект – видимый.

    ‣‣‣ Cells – возвращает коллекцию всœех ячеек рабочего листа.

    ‣‣‣ Columns, Rows – возвращает коллекцию всœех столбцов и строк рабочего листа.

    Методы коллекции Worksheets и объекта Worksheet

    ‣‣‣ Activate – активизирует рабочий лист.

    ‣‣‣ Add – создает новый рабочий лист.

    ‣‣‣ Delete – удаляет рабочий лист.

    ‣‣‣ Worksheets(1).Name = “Декабрь”

    ‣‣‣ Workbooks(1).Worksheets(3).Cells(1,3).Font.Size = 20

    ‣‣‣ Worksheets(“Итоги”).Activate

    ‣‣‣ ActiveSheet.Delete

    ‣‣‣ Worksheets(3).Add

    ‣‣‣ Activate – активизирует рабочий лист.

    ‣‣‣ Add – создает новый рабочий лист.

    ‣‣‣ Delete – удаляет рабочий лист.

    ‣‣‣ Worksheets(1).Name = “Декабрь”

    ‣‣‣ Workbooks(1).Worksheets(3).Cells(1,3).Font.Size = 20

    ‣‣‣ Worksheets(“Итоги”).Activate

    ‣‣‣ ActiveSheet.Delete

    ‣‣‣ Worksheets(3).Add

    Обработка событий объекта Worksheet

    1. Перейти в редактор VBA;
    2. В окошке Project Explorer выбрать объект Лист1 (или другой лист) и перейти в окошко кода для этого объекта;
    3. В верхнем левом списке выбрать объект Worksheet;
    4. В верхнем правом списке выбрать крайне важно е событие.

    События объекта Worksheet

    ‣‣‣ Activate – при активизации рабочего листа.

    ‣‣‣ BeforeDoubleClick – при двойном щелчке по рабочему листу.

    ‣‣‣ Calculate – при пересчете рабочего листа.

    ‣‣‣ Change – при изменении содержимого ячейки пользователœем.

    ‣‣‣ Deactivate – когда рабочий лист теряет фокус.

    ‣‣‣ SelectionChange – при изменении выделœенного диапазона ячеек.

    Объект Range

    В иерархии Excel объект Range (диапазон), один из ключевых объектов VBA,следует сразу после объекта Worksheet. Объект Range может представлять собой ячейку, строку, столбец или диапазон ячеек.

    Объект Selection

    Объект Selection - ϶ᴛᴏ любые выделœенные ячейки на рабочем листе. При работе с объектом Selection можно использовать свойства и методы объекта Range. Для определœения объекта Selection можно использовать метод Select.

    Задание группы строк и столбцов

    1. Range(“A:C”) – задает диапазон, состоящий из столбцов A, B и C.
    2. Range(“2:2”) – задает диапазон состоящий из второй строки.
    3. Range(“2:5”) – задает диапазон состоящий из 2, 3, 4, 5 строки.
    4. Rows(2) – задает вторую строку.
    5. Columns (1) – задает столбец А.

    Связь объекта Range и свойства Cells объекта Worksheet

    1. Range(“A2”) – задает ячейку A2.
    2. Cells(1,2) – задает ячейку B1.
    3. Range(“A2:C3”) – задает диапазон ячеек A2:C3.
    4. Range(“A2:C3, A5:C6”) – задает диапазон ячеек A2:C3 и A5:C6.
    5. Range(Cells(1,2), Cells(3,3)) – задает диапазон ячеек B1:C3.
    6. Range(“B2:D4”).Select Selection.Cells(2,2).Value = 2 – значение 2 вводится в ячейку C3.

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

    ‣‣‣ Value – возвращает или устанавливает значение в ячейках диапазона.

    ‣‣‣ Interior – возвращает объект, представляющий собой фон ячейки. Свойство ColorIndex этого объекта задает цвет фона (от 1 до 56: 1-черный, 2-белый, 3-красный, 4-зелœеный, 5-синий, 6-желтый, 7-фиолетовый ).

    ‣‣‣ Font – возвращает объект, представляющий собой шрифт. Свойства: Name, FontStyle (Regular (обычный), Bold (жирный), Italic (курсив)), Size, ColorIndex.

    ‣‣‣ Formula – возвращает или устанавливает формулу в формате A1.

    ‣‣‣ Address – возвращает адрес ячейки.

    Примеры:

    X = Range(“C1”).Value ‘X - переменная

    Range(“A1:B3”).Value = 1

    With Range (“A1:B2”).Font .Size = 14 : .FontStyle = “Bold” : .ColorIndex = 3 End With

    ‣‣‣ Range(“A1”).Formula = “=$A$4 + $A$10”

    Методы объекта Range

    ‣‣‣ Activate – активизирует ячейку.

    ‣‣‣ Clear – очищает диапазон.

    ‣‣‣ Copy – копирует диапазон в другой диапазон или в буфер обмена.

    ‣‣‣ Delete – удаляет диапазон.

    ‣‣‣ Select – выделяет диапазон.

    Примеры:

    Range(“A1:B3”).Clear

    Range (“A1:D4”).Copy Worksheets(“Лист2”).Range(“E5”)

    Rows(3).Delete

    Range(“A1:C3”).Select : Range(“B1”).Activate

    referatwork.ru

    Объекты Excel - Microsoft Excel для начинающих

    Термин Объекты Excel (понимаемый в широком смысле, как объектная модель Excel) включает в себя элементы, из которых состоит любая рабочая книга Excel. Это, например, рабочие листы (Worksheets), строки (Rows), столбцы (Columns), диапазоны ячеек (Ranges) и сама рабочая книга Excel (Workbook) в том числе. Каждый объект Excel имеет набор свойств, которые являются его неотъемлемой частью.

    Например, объект Worksheet (рабочий лист) имеет свойства Name (имя), Protection (защита), Visible (видимость), Scroll Area (область прокрутки) и так далее. Таким образом, если в процессе выполнения макроса требуется скрыть рабочий лист, то достаточно изменить свойство Visible этого листа.

    В Excel VBA существует особый тип объектов – коллекция. Как можно догадаться из названия, коллекция ссылается на группу (или коллекцию) объектов Excel. Например, коллекция Rows – это объект, содержащий все строки рабочего листа.

    Доступ ко всем основным объектам Excel может быть осуществлён (прямо или косвенно) через объект Workbooks, который является коллекцией всех открытых в данный момент рабочих книг. Каждая рабочая книга содержит объект Sheets – коллекция, которая включает в себя все рабочие листы и листы с диаграммами рабочей книги. Каждый объект Worksheet состоит из коллекции Rows – в неё входят все строки рабочего листа, и коллекции Columns – все столбцы рабочего листа, и так далее.

    В следующей таблице перечислены некоторые наиболее часто используемые объекты Excel. Полный перечень объектов Excel VBA можно найти на сайте Microsoft Office Developer (на английском).

    Объект Описание
    Application Приложение Excel.
    Workbooks Коллекция всех открытых в данный момент рабочих книг в текущем приложении Excel. Доступ к какой-то конкретной рабочей книге может быть осуществлён через объект Workbooks при помощи числового индекса рабочей книги или её имени, например, Workbooks(1) или Workbooks(«Книга1»).
    Workbook Объект Workbook – это рабочая книга. Доступ к ней может быть выполнен через коллекцию Workbooks при помощи числового индекса или имени рабочей книги (см. выше). Для доступа к активной в данный момент рабочей книге можно использовать ActiveWorkbook.

    Из объекта Workbook можно получить доступ к объекту Sheets, который является коллекцией всех листов рабочей книги (рабочие листы и диаграммы), а также к объекту Worksheets, который представляет из себя коллекцию всех рабочих листов книги Excel.

    Sheets Объект Sheets– это коллекция всех листов рабочей книги. Это могут быть как рабочие листы, так и диаграммы на отдельном листе. Доступ к отдельному листу из коллекции Sheets можно получить при помощи числового индекса листа или его имени, например, Sheets(1) или Sheets(«Лист1»).
    Worksheets Объект Worksheets – это коллекция всех рабочих листов в рабочей книге (то есть, все листы, кроме диаграмм на отдельном листе). Доступ к отдельному рабочему листу из коллекции Worksheets можно получить при помощи числового индекса рабочего листа или его имени, например, Worksheets(1) или Worksheets(«Лист1»).
    Worksheet Объект Worksheet – это отдельный рабочий лист книги Excel. Доступ к нему можно получить при помощи числового индекса рабочего листа или его имени (см. выше).

    Кроме этого Вы можете использовать ActiveSheet для доступа к активному в данный момент рабочему листу. Из объекта Worksheet можно получить доступ к объектам Rows и Columns, которые являются коллекцией объектов Range, ссылающихся на строки и столбцы рабочего листа. А также можно получить доступ к отдельной ячейке или к любому диапазону смежных ячеек на рабочем листе.

    Rows Объект Rows – это коллекция всех строк рабочего листа. Объект Range, состоящий из отдельной строки рабочего листа, может быть доступен по номеру этой строки, например, Rows(1).
    Columns Объект Columns – это коллекция всех столбцов рабочего листа. Объект Range, состоящий из отдельного столбца рабочего листа, может быть доступен по номеру этого столбца, например, Columns(1).
    Range Объект Range – это любое количество смежных ячеек на рабочем листе. Это может быть одна ячейка или все ячейки листа.

    Доступ к диапазону, состоящему из единственной ячейки, может быть осуществлён через объект Worksheet при помощи свойства Cells, например, Worksheet.Cells(1,1).

    По-другому ссылку на диапазон можно записать, указав адреса начальной и конечной ячеек. Их можно записать через двоеточие или через запятую. Например, Worksheet.Range(«A1:B10») или Worksheet.Range(«A1», «B10») или Worksheet.Range(Cells(1,1), Cells(10,2)).

    Обратите внимание, если в адресе Range вторая ячейка не указана (например, Worksheet.Range(«A1») или Worksheet.Range(Cells(1,1)), то будет выбран диапазон, состоящий из единственной ячейки.

    Приведённая выше таблица показывает, как выполняется доступ к объектам Excel через родительские объекты. Например, ссылку на диапазон ячеек можно записать вот так:

    Workbooks("Книга1").Worksheets("Лист1").Range("A1:B10")

    Присваивание объекта переменной

    В Excel VBA объект может быть присвоен переменной при помощи ключевого слова Set:

    Dim DataWb As Workbook Set DataWb = Workbooks("Книга1.xlsx")

    Активный объект

    В любой момент времени в Excel есть активный объект Workbook – это рабочая книга, открытая в этот момент. Точно так же существует активный объект Worksheet, активный объект Range и так далее.

    Сослаться на активный объект Workbook или Sheet в коде VBA можно как на ActiveWorkbook или ActiveSheet, а на активный объект Range – как на Selection.

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

    Таким образом, чтобы сослаться на диапазон A1:B10 на активном рабочем листе активной книги, можно записать просто:

    Смена активного объекта

    Если в процессе выполнения программы требуется сделать активной другую рабочую книгу, другой рабочий лист, диапазон и так далее, то для этого нужно использовать методы Activate или Select вот таким образом:

    Sub ActivateAndSelect() Workbooks("Книга2").Activate Worksheets("Лист2").Select Worksheets("Лист2").Range("A1:B10").Select Worksheets("Лист2").Range("A5").Activate End Sub

    Методы объектов, в том числе использованные только что методы Activate или Select, далее будут рассмотрены более подробно.

    Свойства объектов

    Каждый объект VBA имеет заданные для него свойства. Например, объект Workbook имеет свойства Name (имя), RevisionNumber (количество сохранений), Sheets (листы) и множество других. Чтобы получить доступ к свойствам объекта, нужно записать имя объекта, затем точку и далее имя свойства. Например, имя активной рабочей книги может быть доступно вот так: ActiveWorkbook.Name. Таким образом, чтобы присвоить переменной wbName имя активной рабочей книги, можно использовать вот такой код:

    Dim wbName As String wbName = ActiveWorkbook.Name

    Ранее мы показали, как объект Workbook может быть использован для доступа к объекту Worksheet при помощи такой команды:

    Workbooks("Книга1").Worksheets("Лист1")

    Это возможно потому, что коллекция Worksheets является свойством объекта Workbook.

    Некоторые свойства объекта доступны только для чтения, то есть их значения пользователь изменять не может. В то же время существуют свойства, которым можно присваивать различные значения. Например, чтобы изменить название активного листа на «Мой рабочий лист«, достаточно присвоить это имя свойству Name активного листа, вот так:

    ActiveSheet.Name = "Мой рабочий лист"

    Методы объектов

    Объекты VBA имеют методы для выполнения определённых действий. Методы объекта – это процедуры, привязанные к объектам определённого типа. Например, объект Workbook имеет методы Activate, Close, Save и ещё множество других.

    Для того, чтобы вызвать метод объекта, нужно записать имя объекта, точку и имя метода. Например, чтобы сохранить активную рабочую книгу, можно использовать вот такую строку кода:

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

    Чтобы передать методу аргументы, необходимо записать после вызова метода значения этих аргументов через запятую. Например, если нужно сохранить активную рабочую книгу как файл .csv с именем «Книга2», то нужно вызвать метод SaveAs объекта Workbook и передать аргументу Filename значение Книга2, а аргументу FileFormat – значение xlCSV:

    ActiveWorkbook.SaveAs "Книга2", xlCSV

    Чтобы сделать код более читаемым, при вызове метода можно использовать именованные аргументы. В этом случае сначала записывают имя аргумента, затем оператор присваивания «:=» и после него указывают значение. Таким образом, приведённый выше пример вызова метода SaveAs объекта Workbook можно записать по-другому:

    ActiveWorkbook.SaveAs Filename:="Книга2", [FileFormat]:=xlCSV

    В окне Object Browser редактора Visual Basic показан список всех доступных объектов, их свойств и методов. Чтобы открыть этот список, запустите редактор Visual Basic и нажмите F2.

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

    Пример 1

    Этот отрывок кода VBA может служить иллюстрацией использования цикла For Each. В данном случае мы обратимся к нему, чтобы продемонстрировать ссылки на объект Worksheets (который по умолчанию берётся из активной рабочей книги) и ссылки на каждый объект Worksheet отдельно. Обратите внимание, что для вывода на экран имени каждого рабочего листа использовано свойство Name объекта Worksheet.

    'Пролистываем поочерёдно все рабочие листы активной рабочей книги 'и выводим окно сообщения с именем каждого рабочего листа Dim wSheet As Worksheet For Each wSheet in Worksheets MsgBox "Найден рабочий лист: " & wSheet.Name Next wSheet

    Пример 2

    В этом примере кода VBA показано, как можно получать доступ к рабочим листам и диапазонам ячеек из других рабочих книг. Кроме этого, Вы убедитесь, что если не указана ссылка на какой-то определённый объект, то по умолчанию используются активные объекты Excel. Данный пример демонстрирует использование ключевого слова Set для присваивания объекта переменной.

    В коде, приведённом ниже, для объекта Range вызывается метод PasteSpecial. Этот метод передаёт аргументу Paste значение xlPasteValues.

    'Копируем диапазон ячеек из листа "Лист1" другой рабочей книги (с именем Data.xlsx) 'и вставляем только значения на лист "Результаты" текущей рабочей книги (с именем CurrWb.xlsm) Dim dataWb As Workbook Set dataWb = Workbooks.Open("C:\Data") 'Обратите внимание, что DataWb – это активная рабочая книга. 'Следовательно, следующее действие выполняется с объектом Sheets в DataWb. Sheets("Лист1").Range("A1:B10").Copy 'Вставляем значения, скопированные из диапазона ячеек, на рабочий лист "Результаты" 'текущей рабочей книги. Обратите внимание, что рабочая книга CurrWb.xlsm не является 'активной, поэтому должна быть указана в ссылке. Workbooks("CurrWb").Sheets("Результаты").Range("A1").PasteSpecial Paste:=xlPasteValues

    Пример 3

    Следующий отрывок кода VBA показывает пример объекта (коллекции) Columns и демонстрирует, как доступ к нему осуществляется из объекта Worksheet. Кроме этого, Вы увидите, что, ссылаясь на ячейку или диапазон ячеек на активном рабочем листе, можно не указывать этот лист в ссылке. Вновь встречаем ключевое слово Set, при помощи которого объект Range присваивается переменной Col.

    Данный код VBA показывает также пример доступа к свойству Value объекта Range и изменение его значения.

    'С помощью цикла просматриваем значения в столбце A на листе "Лист2", 'выполняем с каждым из них арифметические операции и записываем результат 'в столбец A активного рабочего листа (Лист1) Dim i As Integer Dim Col As Range Dim dVal As Double 'Присваиваем переменной Col столбец A рабочего листа "Лист2" Set Col = Sheets("Лист2").Columns("A") i = 1 'Просматриваем последовательно все ячейки столбца Col до тех пор 'пока не встретится пустая ячейка Do Until IsEmpty(Col.Cells(i)) 'Выполняем арифметические операции со значением текущей ячейки dVal = Col.Cells(i).Value * 3 - 1 'Следующая команда записывает результат в столбец A 'активного листа. Нет необходимости указывать в ссылке имя листа, 'так как это активный лист рабочей книги. Cells(i, 1).Value = dVal i = i + 1 Loop

    Оцените качество статьи. Нам важно ваше мнение:

    office-guru.ru

    Гарбер Г.3. — Основы программирования на Visual Basic и VBA в Excel 2007. — Трюки и приемы в Microsoft Excel

    Рассматриваются основные элементы среды разработки программ, а также базовые конструкции алгоритмических языков Visual Basic и VBA (Visual Basic для приложений). В качестве пользовательского интерфейса программы (макроса) используются стандартные окна Windows, текстовые файлы, формы, таблица Exccl. Рассматривается также вопрос разработки пользовательских функций Excel. Продемонстрированы приемы работы с отладчиком программ, справочными системами, макрорекордером и личной книгой макросов. Опыт программирования не является обязательным. Книга ориентирована на преподавателей информатики, студентов вузов и колледжей, а также на широкий круг читателей, имеющих желание научиться программировать в табличном процессоре Excel и тем самым существенно расширить круг решаемых задач.

    Изучение данной книги возможно лишь в процессе работы на компьютере, оснащенном табличным процессором Excel. Книга рассчитана на читателя, уже имеющего опыт работы с Excel, а также с программой Проводник (Windows Explorer) и текстовым процессором Word, причем читатель должен уметь пользоваться буфером обмена операционной системы Windows.

    В книге рассмотрены базовые конструкции, имеющиеся во всех алгоритмических языках, — оператор присваивания, условные операторы, циклы, массивы и др. Кроме того, рассмотрены вопросы разработки макросов и пользовательских функций Excel средствами макрорекордера и алгоритмического языка VBA (Visual Basic for Applications — VB для приложений), являющегося расширением Visual Basic: помимо всех основных конструкций VB, язык VBA включает ряд специфических конструкций. В качестве пользовательского интерфейса программы (макроса) используются стандартные окна операционной системы Windows, текстовые файлы, формы, таблица Excel.

    Пользовательским интерфейсом программы называется средство общения пользователя с программой. Форма — это прямоугольник с текстовыми полями, кнопками, переключателями и другими элементами управления, знакомыми пользователям Microsoft Office. При изучении VB с помощью данной книги рекомендуем тщательно прорабатывать на компьютере приведенные в ней программы. Рекомендуем также выполнять все задания и чаще использовать такие мощные средства обучения, как отладчик программ VB, макрорекордер Excel и справочные системы Excel и VB.

    excelexpert.ru

    Excel 2010. Профессиональное программирование на VBA - 3 Ноября 2012

    Содержание:

    Об авторе Введение Часть I. Введение в Excel Глава 1. Excel 2010: история программы Краткая история электронных таблиц    Все начиналось с VisiCalc    Lotus 1-2-3    Quattro Pro    Microsoft Excel    Современный рынок электронных таблиц Почему программа Excel так удобна разработчикам Место Excel в стратегии Microsoft Глава 2. Основные элементы Excel Объектное мышление Рабочие книги    Рабочие листы    Листы диаграмм    Листы макросов XLM    Диалоговые листы Excel 5/95 Пользовательский интерфейс Excel    Лента    Контекстные меню и мини-панель инструментов    Диалоговые окна    Комбинации клавиш    Смарт-теги    Область задач Настройка окна программы Ввод данных Формулы, функции и имена Выделение объектов Форматирование Параметры защиты    Защита формул от перезаписи    Защита структуры рабочей книги    Защита книги с помощью пароля    Защита VBA-кода с помощью пароля Диаграммы Фигуры и рисунки Smart Art Доступ к базам данных    Базы данных рабочих листов    Внешние базы данных Excel и Интернет Инструменты анализа Надстройки Макросы и программирование Файловые форматы Справочная система Excel Глава 3. Особенности формул О формулах Вычисление формул Ссылки на ячейки и диапазоны    Зачем нужны неотносительные ссылки    О ссылках в стиле R1С1    Ссылки на другие листы или рабочие книги Использование имен    Присвоение имен ячейкам и диапазонам    Применение имен к существующим ссылкам    Пересечение имен    Присвоение имен столбцам и строкам    Определение области действия    Присвоение имен константам    Присвоение имен формулам    Присвоение имен объектам Ошибки в формулах Excel Формулы массивов    Пример формулы массива    Создание календаря с помощью формулы массива    Достоинства и недостатки формул массивов Подсчет и суммирование    Примеры формул подсчета    Примеры формул суммирования    Другие инструменты подсчета Работа со значениями даты и времени    Ввод значений даты и времени    Использование дат до 1900 года Создание мегаформул Глава 4. Файлы Excel Запуск Excel Типы файлов    Форматы файлов Excel    Форматы текстовых файлов    Форматы файлов баз данных    Другие форматы файлов Работа с файлами шаблонов    Просмотр шаблонов    Создание шаблонов    Создание шаблонов рабочих книг Содержимое файла Excel    Структура файла    Почему файловый формат столь важен Файл OfficeUI Файл XLB Файлы надстроек Настройки Excel в системном реестре    Кратко о системном реестре    Настройки Excel Часть II. Разработка приложений Excel Глава 5. Приложения электронных таблиц О приложениях электронных таблиц Разработчик и конечный пользователь    Кто такие разработчики и чем они занимаются    Классификация пользователей электронных таблиц    Для кого предназначены приложения электронных таблиц Решение проблем с помощью Excel Основные типы электронных таблиц    Электронные таблицы “на скорую руку”    Электронные таблицы “не для посторонних глаз”    Однопользовательские приложения    Приложения-“спагетти”    Приложения-утилиты    Надстройки с функциями рабочих листов    Одноблоковые бюджеты    Модели “что если”    Электронные таблицы для хранения данных и доступа к ним    Клиентские приложения баз данных    Приложения “под ключ” Глава 6. Принципы разработки приложений электронных таблиц Этапы разработки приложения Определение потребностей пользователя Проектирование приложения с учетом потребностей пользователя Определение удобного пользовательского интерфейса    Настройка ленты    Настройка контекстных меню    Комбинации клавиш    Создание пользовательских диалоговых окон    Использование элементов управления ActiveX на рабочем листе    Разработка собственно приложения Работа с конечным пользователем    Тестирование приложения    Как сделать приложение отказоустойчивым    Создание привлекательных и интуитивно понятных приложений    Создание пользовательской справочной системы    Документирование усилий, затраченных на разработку    Распространение приложения среди пользователей    Обновление приложения Другие вопросы разработки приложений    Версия Excel, установленная у пользователя    Трудности, касающиеся поддержки языка    Быстродействие системы    Видеорежимы Часть III. Visual Basic for Applications Глава 7. Введение в VBA Основы языка BASIC Обзор VBA    Объектные модели    Сравнение VBA и XLM Основы VBA Знакомство с редактором Visual Basic    Отображение вкладки Разработчик    Запуск VBE    Окно VBE Работа с Project Explorer    Добавление нового модуля VBA    Удаление модуля VBA    Экспорт и импорт объектов Работа с окнами кода    Сворачивание и восстановление окон    Сохранение кода VBA    Ввод кода VBA Настройка среды VBE    Вкладка Editor    Вкладка Editor Format    Вкладка General    Вкладка Docking Средство записи макросов    Что записывается    Абсолютный или относительный    Параметры записи    Улучшение записанных макросов Об объектах и коллекциях    Иерархия объектов    О коллекциях    Ссылки на объекты    Свойства и методы    Методы объекта Объект Comment: пример использования    Справочные сведения об объекте Comment    Свойства объекта Comment    Методы объекта Comment    Коллекция Comments    О свойстве Comment    Объекты, вложенные в Comment    Содержит ли ячейка примечание    Добавление нового объекта Comment Некоторые полезные свойства объекта Арр1iсation Работа с объектами Range    Свойство Range    Свойство Cells    Свойство Offset Что следует знать об объектах    Важные концепции для запоминания    Узнайте больше об объектах и свойствах Глава 8. Основы программирования на VBA Обзор элементов и конструкций VBA Комментарии Переменные, типы данных и константы    Определение типов данных    Объявление переменных    Область действия переменной    Работа с константами    Управление строками    Работа с датами Операторы присваивания Массивы    Объявление массивов    Объявление многомерных массивов    Объявление динамических массивов Объектные переменные Пользовательские типы данных Встроенные функции Управление объектами и коллекциями    Конструкция With - End With    Конструкция For Each - Next Контроль за выполнением кода    Оператор GoTo    Конструкция If- Then    Конструкция Select Case    Циклическая обработка инструкций Глава 9. Работа с процедурами VBA О процедурах    Объявление процедуры Sub    Область действия процедуры Выполнение процедуры    Выполнение процедуры с помощью команды Run Sub/UserForm    Выполнение процедуры в диалоговом окне Макрос    Выполнение процедуры с помощью комбинации клавиш    Выполнение процедуры с помощью ленты    Выполнение процедуры из пользовательского контекстного меню    Выполнение процедуры из другой процедуры    Выполнение процедуры по щелчку на объекте    Выполнение процедуры по событию    Выполнение процедуры в окне отладки Передача аргументов процедурам Обработка ошибок    Перехват ошибок    Примеры обработки ошибок Реальный пример    Цель    Требования к проекту    Исходные данные    Подход    Что необходимо знать    Некоторые предварительные соображения    Подготовка    Написание кода    Создание процедуры сортировки    Дополнительное тестирование    Устранение проблем    Доступность    Оценка проекта Глава 10. Создание функций Процедуры и функции Назначение пользовательских функций Простой пример функции    Использование функции на рабочем листе    Использование функции в процедуре VBA    Анализ пользовательской функции Синтаксис функции    Область действия функции    Выполнение функций Аргументы функций Примеры функций    Функции без аргументов    Функция с одним аргументом    Функция с двумя аргументами    Функция с аргументом в виде массива    Функция с необязательными аргументами    Функция VBA, возвращающая массив    Функция, возвращающая значение ошибки    Функция с неопределенным количеством аргументов Имитация функции СУММ Расширенные функции для работы с датами Отладка функций Работа с диалоговым окном Мастер функций    Использование метода MacroOptions    Определение категории функции    Добавление описания функции вручную Использование надстроек для хранения пользовательских функций Использование функций Windows API    Примеры функций Windows API    Определение папки Windows    Определение состояния клавиши    Дополнительная информация о функциях Windows API Глава 11. Приемы и методы программирования на VBA Учимся на примерах Работа с диапазонами    Копирование диапазона    Перемещение диапазона    Копирование диапазона переменного размера    Выделение или определение типов диапазонов    Запрос значения ячейки    Ввод значения в следующую пустую ячейку    Приостановка работы макроса для определения диапазона пользователем    Подсчет выделенных ячеек    Определение типа выделенного диапазона    Просмотр выделенного диапазона    Удаление всех пустых строк    Дублирование строк    Определение диапазона, находящегося в другом диапазоне    Определение типа данных ячейки    Чтение и запись диапазонов    Более эффективный способ записи в диапазон    Перенесение одномерных массивов    Перенесение диапазона в массив типа Variant    Выбор ячеек по значению    Копирование несмежных диапазонов Управление рабочими книгами и листами    Сохранение всех рабочих книг    Сохранение и закрытие всех рабочих книг    Частичное сокрытие элементов рабочего листа    Синхронизация рабочих книг Методы программирования на VBA    Переключение значения булева свойства    Определение количества страниц для печати    Отображение даты и времени    Отображение списка шрифтов    Сортировка массива    Обработка последовательности файлов Полезные функции для программ VBA    Функция FileExists    Функция FileNameOnly    Функция PathExists    Функция RangeNameExists    Функция Sheet Exists    Функция WorkbookIsOpen    Получение значения из закрытой рабочей книги Полезные функции в формулах Excel    Получение информации о форматировании ячейки    Беседа с рабочим листом    Отображение даты сохранения файла или вывода файла на печать    Основы иерархии объектов    Подсчет количества ячеек между двумя значениями    Определение последней непустой ячейки в столбце или в строке    Соответствует ли строка шаблону    Возвращение из строки n-го элемента    Преобразование чисел в текст    Универсальная функция    Функция SheetOffset    Возвращение максимального значения всех рабочих листов    Возвращение массива случайных целых чисел без повторов    Расположение значений диапазона в произвольном порядке Вызов функций Windows API    Определение связей с файлами    Определение буквы диска    Определение параметров принтера по умолчанию    Определение текущего видеорежима    Добавление звука в приложение    Чтение и запись параметров системного реестра Часть IV. Пользовательские формы Глава 12. Создание собственных диалоговых окон Перед созданием диалоговых окон Использование окон ввода данных    Функция InputBox в VBA    Метод Excel InputBox Функция VBA MsgBox Метод Excel GetOpenFilename Метод Excel GetsaveAsFi1ename Получение имени папки Отображение диалоговых окон Excel Отображение формы ввода данных    Доступ к формам ввода данных    Отображение формы ввода данных с помощью VBA Глава 13. Работа с пользовательскими формами Обработка пользовательских диалоговых окон в Excel Вставка новой формы UserForm Добавление элементов управления в пользовательское диалоговое окно Элементы управления в окне Toolbox    Checkbox    ComboBox    CommandButton    Frame    Image    Label    ListBox    MultiPage    OptionButton    RefEdit    ScrollBar    SpinButton    TabStrip    TextBox    ToggleButton Настройка элементов управления пользовательского диалогового окна Изменение свойств элементов управления    Работа с окном Properties    Общие свойства    Советы по использованию клавиатуры Отображение пользовательского диалогового окна    Отображение немодальной формы    Отображение пользовательского диалогового окна на основе значения переменной    Загрузка пользовательского диалогового окна    О процедурах обработки событий Закрытие пользовательского диалогового окна Пример создания пользовательского диалогового окна    Создание пользовательской формы    Создание кода для отображения диалогового окна    Тестирование диалогового окна    Добавление процедур обработки событий    Проверка правильности введенных данных    Ура, заработало! События объекта UserForm    Получение дополнительных сведений о событиях    События объекта UserForm    События элемента управления SpinButton    Совместное использование элементов управления SpinButton и TextBox Ссылка на элементы управления пользовательского диалогового окна Настройка панели инструментов Тoolbox    Добавление новых страниц    Настройка или комбинирование элементов управления    Добавление элементов управления ActiveX Создание шаблонов диалоговых окон Вопросы для самоконтроля Глава 14. Примеры пользовательских форм Создание “меню” с помощью объекта UserForm    Использование элементов управления CommandButton    Использование элемента управления List Box Выбор диапазона в пользовательской форме Создание заставки Отключение кнопки закрытия пользовательского диалогового окна Изменение размера диалогового окна Масштабирование и прокрутка листа в пользовательском диалоговом окне Использование элемента управления ListBox    Добавление опций в элемент управления ListBox    Определение выделенного элемента списка    Определение нескольких выделенных элементов списка    Несколько списков в одном элементе управления ListBox    Передача опций элемента управления ListBox    Перемещение опций в списке элементов управления ListBox    Работа с многоколоночными элементами управления ListBox    Использование элемента управления ListBox для выделения строк на листе    Использование элемента управления ListBox для активизации листа Применение элемента управления MultiPage Использование внешних элементов управления Анимация элемента управления Label Глава 15. Дополнительные приемы работы с пользовательскими формами Немодальные диалоговые окна Отображение индикатора текущего состояния    Создание отдельного индикатора текущего состояния    Отображение сведений о текущем состоянии с помощью элемента управления MultiPage    Отображение индикатора текущего состояния без применения элемента управления MultiPage Создание мастеров    Настройка элемента управления MultiPage    Добавление кнопок    Программирование кнопок    Программирование зависимостей    Выполнение задачи Имитация работы функции MsgBox    Код функции MyMsgBox    Как это работает    Использование функции MyMsgBox Диалоговое окно UserForm с перемещаемыми элементами управления Диалоговое окно UserForm без строки заголовка Имитация панели инструментов с помощью диалогового окна UserForm Диалоговое окно UserForm с изменяемыми размерами Несколько кнопок с одной процедурой обработки событий Диалоговое окно выбора цвета Отображение диаграммы в пользовательском диалоговом окне UserForm    Сохранение диаграммы в виде GIF-файла    Изменение свойства Picture элемента управления Image Создание полупрозрачной формы ввода данных Расширенная форма ввода данных    Подробнее о расширенной форме ввода данных    Установка надстройки Enhanced Data Form Игра в “пятнашки” Играем в видеопокер в окне UserForm Часть V. Профессиональные методы программирования Глава 16. Разработка утилит Excel с помощью УВА Об утилитах Excel Создание утилит с помощью VBА Признаки хорошей утилиты Утилита Text Tools    Обоснование    Назначение проекта    Рабочая книга утилиты    Как работает утилита    Пользовательская форма утилиты    Модуль Modulel    Модуль кода UserForml    Повышение эффективности утилиты    Сохранение настроек утилиты    Отмена ранее выполненных действий    Отображение файла справки    Добавление кода RibbonX    Оценка проекта    Принципы работы утилиты Дополнительно об утилитах Excel Глава 17. Работа со сводными таблицами Вводный пример    Создание сводной таблицы    Просмотр созданного кода    Усовершенствование записанного кода сводной таблицы Создание сложных сводных таблиц    Код сводной таблицы    Принцип работы сводной таблицы Создание нескольких сводных таблиц Создание обратной сводной таблицы Глава 18. Управление диаграммами Кратко о диаграммах    Расположение диаграмм    Диаграммы и функция записи макроса    Объектная модель диаграммы Создание внедренной диаграммы Размещение диаграммы на листе диаграммы Активизация диаграммы с помощью кода VBA Перемещение диаграммы Деактивизация диаграммы Определение активности диаграммы Удаление объектов из коллекции ChartObjects или Charts Циклический просмотр диаграмм Изменение размеров и выравнивание диаграмм Экспорт диаграммы    Экспорт всех изображений Изменение применяемых в диаграмме данных    Изменение данных диаграммы на основе активной ячейки    Определение используемых в диаграмме диапазонов данных с помощью VBA Отображение подписей для данных на диаграмме Отображение диаграммы в пользовательском диалоговом окне События диаграмм    Пример использования событий объекта Chart    Поддержка событий для встроенных диаграмм    Пример использования событий объекта Chart во встроенной диаграмме Тонкости создания диаграмм    Печать встроенных диаграмм на всю страницу    Отображение/сокрытие рядов данных    Создание фиксированной диаграммы    Отображение подсказки Анимирование диаграмм    Прокрутка диаграммы    Создание диаграммы с графиком гипоциклоиды    Создание диаграммы часов Создание интерактивной диаграммы без написания макросов    Получение данных приложения    Создание переключателей на рабочем листе    Создание списка городов    Создание диапазона данных для интерактивной диаграммы    Создание интерактивной диаграммы Спарклайны Глава 19. Концепция событий Excel Типы событий Excel    Понимание последовательности событий    Размещение процедур обработки событий    Отключение событий    Ввод кода процедуры обработки события    Процедуры обработки событий, которые используют аргументы События уровня объекта Workbook    Событие Open    Событие Activate    Событие Sheet Activate    Событие NewSheet    Событие BeforeSave    Событие Deactivate    Событие BeforePrint    Событие Bef oreClose События объекта Worksheet    Событие Change    Событие Sе1есtionChange    Событие BeforeDoubleClick    Событие BeforeRightClick События объекта Chart События объекта App1iсation    Включение событий уровня объекта Application    Определение факта открытия рабочей книги    Отслеживание событий уровня объекта Application События объекта UserForm События, не связанные с объектами    Событие OnTime    Событие ОпКеу Глава 20. Взаимодействие с другими приложениями Запуск другого приложения из Excel    Использование функции Shell    Использование API-функции ShellExecute Активизация другого приложения с помощью Excel    Инструкция АррАсtivatе    Активизация приложения Microsoft Office Запуск аплетов папки Панель управления и мастеров Автоматизация    Работа с внешними объектами    Раннее и позднее связывание    Простой пример позднего связывания    Управление приложением Word из Excel    Управление программой Excel из другого приложения Отправка почтовых сообщений с помощью Outlook Отправка почтовых вложений с помощью Excel Использование метода SendKeys Глава 21. Создание и использование надстроек Определение надстройки    Сравнение надстройки со стандартной рабочей книгой    Основные причины создания надстроек Использование диспетчера надстроек Excel Создание надстройки Пример надстройки    Добавление описания в надстройку    Формирование надстройки    Установка надстройки    Тестирование надстройки    Распространение надстройки    Изменение надстройки Сравнение файлов XLAM и XLSM    Членство в коллекциях    Отображение окон файлов XSLM и XLAM    Рабочие листы и листы диаграмм в файлах XLSM и XLAM    Получение доступа к VBA-процедурам надстройки Управление надстройками с помощью кода VBA    Добавление элемента в коллекцию Addins    Удаление элемента из коллекции Addins    Свойства объекта Addin    Получение доступа к надстройке как к рабочей книге    События объекта Addin Оптимизация производительности надстроек Проблемы, связанные с использованием надстроек    Правильная установка    Ссылки на другие файлы    Указание правильной версии Excel Часть VI. Разработка приложений Глава 22. Работа с лентой Начальные сведения о ленте Управление лентой с помощью VBA    Доступ к элементам управления на ленте    Как работать с лентой    Активизация вкладки Настройка ленты    Простой пример кода RibbonX    Усовершенствование простого примера кода RibbonX    Еще один пример кода RibbonX    Демонстрация возможностей элементов управления ленты    Пример элемента управления Dynami cMenu    Некоторые замечания о настройке ленты Создание “старомодных” панелей инструментов    Ограничения, присущие “старомодным” панелям в Excel 2010    Код панели инструментов Глава 23. Работа с контекстными меню Обзор объекта CommandBar    Типы объектов CommandBar    Отображение контекстных меню    Ссылки на объекты CommandBar    Установка ссылок на элементы управления в объекте CommandBar    Свойства элементов управления CommandBar    Отображение всех элементов контекстного меню Настройка контекстных меню с помощью VBA    Сброс контекстных меню    Отключение контекстного меню    Отключение элементов контекстного меню    Добавление нового элемента в контекстное меню ячейки    Добавление подменю в контекстное меню Контекстные меню и события    Автоматическое добавление и удаление меню    Отключение или сокрытие элементов контекстного меню    Создание нового контекстного меню Глава 24. Предоставление справки в приложениях Справка в приложениях Excel    Диалоговая система Справочная система, созданная с помощью компонентов Excel    Использование примечаний к ячейке для предоставления справки    Применение текстового поля для предоставления справки    Использование рабочего листа для отображения справки    Отображение справки в пользовательском диалоговом окне Отображение справки в окне браузера    Использование HTML-файлов    Использование файла MHTML Использование средства HTML Help    Метод Help Связывание файлов справочного руководства с приложением    Связывание раздела справочного руководства с функцией VBA Глава 25. Разработка пользовательских приложений Что такое приложение, ориентированное на пользователя Мастер расчета займа    Использование мастера    Структура рабочей книги    Как это работает Концепции разработки приложений Часть VII. Дополнительные темы Глава 26. Вопросы совместимости Концепция совместимости Проблемы совместимости Избегайте использования новых возможностей Поддержка платформы Macintosh Использование 64-разрядной версии Excel Создание интернациональных приложений    Многоязычные приложения    Язык в VBA    Использование “локальных” свойств    Идентификация настроек системы    Параметры настройки даты и времени Глава 27. Управление файлами с помощью VBA Часто выполняемые операции с файлами    Управление файлами с помощью функций VBA    Использование объекта FileSystemObject Отображение расширенной информации о файле Работа с текстовыми файлами    Открытие текстового файла    Чтение текстового файла    Запись в текстовый файл    Получение номера файла    Определение или установка позиции в файле    Операторы чтения и записи в файл Примеры управления текстовыми файлами    Импортирование данных из текстового файла    Экспортирование диапазона в текстовый файл    Импортирование текстового файла в диапазон    Протоколирование операций в Excel    Фильтрация текстового файла    Экспортирование диапазона в формат HTML    Экспортирование диапазона в XML-файл Архивирование и разархивирование файлов    Архивирование файлов    Разархивирование файла Модель ADO Глава 28. Управление компонентами Visual Basic Введение в IDE Объектная модель IDE    Коллекция VBProjects Отображение всех компонентов проекта VBA Отображение всех процедур VBA, содержащихся в рабочей книге Замещение модуля обновленной версией Использование VBA для создания кода VBA Добавление элементов управления в диалоговое окно UserForm на этапе разработки Управление диалоговыми окнами UserForm на этапе разработки и этапе выполнения    Добавление 100 элементов управления CommandButton на этапе разработки Программное создание диалоговых окон UserForm    Простой пример    Более сложный пример Глава 29. Модули классов Определение модуля класса Пример создания модуля класса    Вставка модуля класса    Добавление кода VBA    Использование модуля класса NumLockClass Дополнительные сведения о модулях классов    Программирование свойств объектов    Программирование методов объектов    События модуля класса Модуль класса CSVFileClass    Переменные уровня модуля класса    Процедуры свойств    Процедуры методов    Использование класса CSVFileClass Глава 30. Работа с цветом Определение цвета    Цветовая модель RGB    Цветовая модель HSL    Преобразование цветов Оттенки серого    Преобразование цветов в оттенки серого    Просмотр диаграмм в оттенках серого Экспериментирование с цветами Темы документа    Концепция темы документа    Цвета темы документа    Отображение всех цветов темы Работа с фигурами    Фоновый цвет фигуры    Фигуры и цвета темы    Другие типы заливки фигур Изменение цветов диаграммы Глава 31. Часто задаваемые вопросы о программировании в Excel Списки часто задаваемых вопросов Общие вопросы об Excel Редактор Visual Basic Процедуры Функции Объекты, свойства, методы и события Пользовательские диалоговые окна Надстройки Пользовательский интерфейс Часть VIII. Приложения Приложение А. Интерактивные ресурсы Excel Справочная система Excel Техническая поддержка со стороны компании Microsoft    Варианты поддержки    База знаний Microsoft    Начальная страница Microsoft Excel    Начальная страница Microsoft Office Группы новостей    Доступ к группам новостей с помощью программы чтения новостей    Доступ к группам новостей с помощью браузера    Поиск в группах новостей Веб-сайты    The Spreadsheet Page    Блог, посвященный Excel    Сайт Йона Пелтиера    Сайт Чипа Пирсона    Сайт Contextures    Блог Pointy Haired Dilbert    Сайт Дейвида Макритчи    Мистер Excel Приложение Б. Справочник по операторам и функциям VBA Вызов функций Excel с помощью операторов VBA Приложение В. Коды ошибок VBA Приложение Г. Содержимое компакт-диска Системные требования Использование компакт-диска Файлы и программы, находящиеся на компакт-диске    Электронная версия книги    Файлы примеров Решение проблем Предметный указатель

    radiosit.ru