
- •Методичні вказівки
- •Мовою Visual Basic for Application (vba)”
- •6.040303 Системний аналіз
- •1 Лабораторна робота №1
- •1.1 Теоретичні відомості
- •1.1.1 Функція InputBox
- •1.1.2 Процедура MsgBox
- •Текст процедури
- •Текст процедури
- •Результати роботи програми
- •2 Лабораторна робота №2
- •2.1 Створення макросів
- •2.2 Об’єкт Range, його властивості та методи
- •2.2.1 Деякі властивості
- •2.2.2 Деякі методи
- •2.3 Контрольні питання.
- •3.1.2 Оператор циклу по сімейству об'єктів.
- •3.1.3 Оператори циклу з умовою.
- •3.2 Контрольні питання.
- •3.3 Індивідуальні завдання
- •4 Лабораторна робота №4
- •4.1 Функції користувача
- •Текст програми – функції
- •Текст процедури для виклику функції
- •4.2 Процедури користувача
- •4.3 Контрольні питання
- •4.4 Індивідуальні завдання
- •5 Лабораторна робота №5
- •5.1 Створення нової форми
- •5.2 Деякі властивості та події елементів управління
- •5.3 Створення списків
- •5.4 Створення інтерфейсу користувача
- •Програмний код для кнопки CommandButton1 (подія Click)
- •Програмний код для кнопки CommandButton2 (подія Click)
- •5.5 Контрольні питання
- •5.6 Завдання
- •6 Лабораторна робота №6
- •6.1 Введення та виведення масивів
- •6.2 Контрольні питання
- •6.3 Індивідуальні завдання
- •Література
2.2.2 Деякі методи
Copy – копіює діапазон в інший діапазон або в буфер обміну. Якщо метод використовується без аргументу, то діапазон копіюється в буфер. Метод може мати один аргумент destination, який визначає новий діапазон, куди здійснюється копіювання. Аргумент можна задавати неявно або по імені. Наприклад, для копіювання діапазону А1 : С4 на Лист2 можна використати будь-який з варіантів:
Range( “A1:C4” ) . Copy Destination : = Worksheets( “ Лист2 ”) . Range( “A1”)
Range( “A1:C4” ) . Copy (Worksheets( “ Лист2 ”) . Range( “A1” ))
Cut – вирізає діапазон та копіює його на нове місце. Аргумент destination вказує на місце призначення. Якщо він відсутній, то діапазон копіюється в буфер обміну.
Delete – видаляє вказаний діапазон. Наприклад, для вилучення третього рядка активного робочого Листа можна використати метод
Rows(3) . Delete
Insert – вставка діапазону клітин. Наприклад, для вставки нового рядка перед четвертим рядком можна використати інструкцію
Worksheets( “Лист1” ) . Rows(4) . Insert
PasteSpecial – вставляє на вказане місце діапазон з буферу обміну. Метод дозволяє вставляти значення, копіювати формати даних, границі, ширину стовпчиків та ін., використовуючи параметри. Аргумент Paste визначає ту частину вмісту буфера обміну, яка повинна бути вставлена в діапазон. Припустимі значення:
XlPasteAll – усе;
XlPasteFormulas – формули;
XlPasteValues – значення;
XlPasteFormats – формати.
В наступному прикладі відбувається копіювання значень із діапазону C1:C5 до діапазону D1:D5.
Range( "C1:C5" ) .Copy
Range( "D1:D5") . PasteSpecial (xlPasteValues)
Find – використовується для пошуку клітини, яка містить вказану інформацію. Він знаходить першу клітину, що задовольняє умові, або набуває значення Nothing, якщо такої клітинки не знайдено.
Аргументи методу:
What – вказує зразок для пошуку;
After – вказується перша клітина, з якої починається пошук, якщо аргумент відсутній, то пошук провадиться у всьому діапазоні;
Lookin – тип інформації для пошуку; припустимі значення: xlFormulas – формули, xlValues – значення;
LookAt – критерій збігу: xlWhole – клітина цілком, xlPart – частина клітини;
SearchOrder – встановлює напрямок пошуку по стовпчиках (xlByColumns) або по рядках (xlByRows);
SearchDirection – встановлює напрямок пошуку уперед (xlNext за замовчанням) або назад (xlPrevious);
MatchCase – за замовчанням регістр під час пошуку НЕ враховується (аргумент дорівнює False), якщо аргумент дорівнює True – регістр враховується.
У прикладі відшукується й активізується клітина, що містить мінімальне з чисел діапазону B2 : E5:
Range(“E6”) . Formula = “=Min(B2 : E5)”
Range(“B2:E5”) .Find (Range(“E6”) .Value, , xlValues, xlWhole) . Select
AutoFit – змінює ширину стовпчика або висоту рядка відповідно розміру даних.
AutoFill – за зразком автоматично заповнює клітини вказаного діапазону елементами послідовності. Аргумент:
Destination – діапазон, що заповнюється, повинен містити в собі діапазон зі зразком;
Наприклад, щоб заповнити діапазон А1 : А15 непарними числами, починаючи з 1, треба спочатку занести зразок до А1 та А2, потім використати метод AutoFill, тобто:
Range(“А1”) . Value=1
Range(“А2”) . Value=3
Range(“А1 : А2 ”) . AutoFill destination: =Range(“А1 : А15”)
Sort – метод здійснює сортування у вказаному діапазоні з урахуванням від одного до трьох критеріїв. Деякі аргументи:
key1, order1, key2, order2, key3, order3,
де key – поля, за якими виконується сортування;
order – задає порядок сортування. Припустимі значення:
хlAscending – за зростанням (за замовчанням);
хlDescending – за спаданням.
В наступному прикладі відбувається сортування діапазону A1: C20 за зростанням по стовпчиках A1 та В1:
Range("A1 : C20") . Sort Key1 : = Range("A1"), Key2 : = Range("B1")