Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекцій з дисципліни.doc
Скачиваний:
17
Добавлен:
21.04.2019
Размер:
13.25 Mб
Скачать

10.3.5. Об’єкт CommandBar (Командна панель), його властивості і методи.

У Excel нараховується декілька командних панелей (панелі інструментів, рядок меню, контекстне меню), які утворюють набір CommandBars (Командні панелі). Ієрархічна схема об’єкта CommandBar наведена на рис. 10.5.

Елементи управління сім’ї CommandBarControls мають наступне призначення:

  • CommandBarButton – для створення кнопки або пункту меню;

  • CommandBarComboBox – для створення поля введення або поля зі списком;

  • CommandBarPopUp – для створення пункту меню, що розкривається.

Таблиця 10.9

Властивості об’єкта CommandBar.

Назва властивості

Зміст властивості

Visible

Визначає видимість рядка панелі команд. Наприклад, заховати панель інструментів Форматування: Application. CommandBars(“Formatting”). Visible=False. Відновити панель Форматування можна командою Application. CommandBars(“Formatting”). Visible=True

Controls

Активізує сімейство CommandBarControls, до складу якого входять всі елементи управління конкретної панелі.

Position

Визначає місце розташування панелі команд, що створюється. Допустимі значення: msoBarLeft (прив’язка рядка меню до лівої границі вікна додатка), msoBarTop (прив’язка рядка меню до верхньої границі вікна додатка), msoBarRight (прив’язка рядка меню до правої границі вікна додатка), msoBarButton (прив’язка рядка меню до нижньої границі вікна додатка), msoBarFloating (вільне розміщення рядка меню на екрані) msoBarPopup (визначає чи буде панель команд контекстним меню). Наприклад, Application. CommandBars.Add (Name:=“МояПанель”, Position:=msoBarTop, MenuBar:=False, Temporary:=True)

Таблиця 10.10

Методи об’єкта CommandBar

Add

Створює нову панель команд і додає її до сімейства CommandBars. Синтаксис метода: Add(Name, Position, MenuBar, Temporary)

Name – Ім’я панелі, що створюється

Position – визначає місце розташування панелі команд

MenuBar – можливі значення: True (панель, що створюється, заміняє активну панель меню); False (активна панель не вилучається)

Temporary – можливі значення: True (панель, що створена, вилучається під час закриття Excel); False (активна панель не вилучається)

Delete

Вилучає панель команд

Reset

Відновлює вмонтовану панель інструментів

Доступ до об’єкту можливий через його методи і властивості.

10.3.6. Конструкція оператора With мови vba.

Після ознайомлення з об’єктами, слід розглянути декілька конструкцій мови VBA, які значно полегшують роботу з об’єктами. Для спрощення розуміння використання оператора With, розглянемо приклад форматування діапазону комірок

Процедура форматування діапазону комірок:

Public Sub Format()

Range("B2:D15").NumberFormat = "#,##0.00"

Range("B2:D15").Font.Name = "MS San Serif"

Range("B2:D15").Font.FontStyle = Regular

Range("B2:D15").Font.Size = 13

Range("B2:D15").Font.Strikethrough = False

Range("B2:D15").Font.Superscript = False

Range("B2:D15").Font.Subscript = True

Range("B2:D15").Font.OutlineFont = True

Range("B2:D15").Font.Shadow = True

Range("B2:D15").Font.Underline = xlUnderlineStyleNone

Range("B2:D15").Font.ColorIndex = xlAutomatic

End Sub

При введені коду процедури ми декілька разів набираємо Range("B2:D15"). Із подібних ситуацій VBA пропонує інший вихід – використання оператора With, який “прив’язує” властивості або методи до об’єкта.

Оператор With має наступний синтаксис:

With об’єкт

Оператори

End With

Лістинг наведений нижче демонструє той же код процедури, але з використанням оператора With, який спочатку “прив’язує” до об’єкта Range("B2:D15") властивість NumberFormat = "#,##0.00", а потім властивість Font через другий оператор With “прив’язується” до об’єкта Range("B2:D15").

Оператори With можна вкладати один в одного (допускається до семи вкладень).

Процедура форматування діапазону комірок із використанням оператора With:

Public Sub Format()

With Range("B2:D15")

.NumberFormat = "#,##0.00"

With .Font

.Name = "MS San Serif"

.FontStyle = Regular

.Size = 13

.Strikethrough = False

.Superscript = False

.Subscript = True

.OutlineFont = True

.Shadow = True

.Underline = xlUnderlineStyleNone

.ColorIndex = xlAutomatic

End With

End With

End Sub