- •Міністерство освіти і науки україни
- •Програмування мовою
- •У середовищі Microsoft Excel
- •1 Введення
- •2 Об'єкти Excel, їхньої властивості і методи.
- •2.1 Об'єкт Workbook і сімейство Workbooks
- •2.2 Об'єкт Worksheet і сімейство Worksheets
- •Count - повертає кількість об'єктів у наборі; у прикладі перемінної k присвоюється значення, рівне числу рядків діапазону a1:d4
- •Приклад макроса
- •3 Мова програмування vba
- •3.1 Типи перемінних, оголошення перемінних, область дії перемінних
- •Оператор присвоювання
- •Стандартні діалогові вікна
- •Умовний оператор і оператор вибору.
- •3.5 Оператори циклу
- •Оператор циклу по сімейству об'єктів.
- •4 Створення функцій і процедур користувача
- •5 Створення форм та їх використання
- •5.1 Елементи керування у формах, їхні властивості, методи, події.
- •5.2 Приклади створення форм
- •Література
Приклад макроса
Приклад 2.1. Напишемо процедуру, що виконує такі дії:
Заносить в клітину А1 текст «Кількість одиниць», в клітину В1 текст «Вартість одиниці», в клітину С1 текст «Ціна одиниці», в клітину D1 текст «Загальна вартість»;
У клітину А2 записує число 1, в клітину А3 число 2 і потім заповнює клітинии від А4 до А16 значеннями від 3 до 15;
У клітини від В2 до В16 записує випадкові числа з інтервалу від 0 до100 і округляє їх до цілого;
Копіює вміст клітин В2:В16 у буфер, а потім вставляє з буфера в діапазон С2:С16 тільки значення з клітин В2:В16;
У клітину D2 записує формулу, що перемножує числа з клітин C2 і А2 і копіює цю формулу в діапазон D3:D16;
Проводить межу під діапазоном А16:D16 подвійною тонкою лінією.
У клітину D18 поміщає формулу, що сумує усі числа зі стовпчика D.
У клітину C19 записує формулу, що обчислює мінімальне значення з діапазону C2:C16.
Знаходить у діапазоні С2:С16 клітину із мінімальним значенням і виділяє її кольором.
Сортує список за значеннями третього стовпчика.
Sub Пример21()
Range("A1"). Value = "Кількість одиниць"
Range("B1"). Value = "Вартість одиниці"
Range(“C1”),Value= ”Ціна одиниці”
Range("D1"). Value = "Загальна вартість"
Range("A1:C1"). Select
Selection. Columns. AutoFit ‘ автопідбір ширини стовпчиків
Range("A2"). Value = 1
Range("A3"). Value = 2
Range("A2:A3"). AutoFill Destination:=Range("A2:A16"),
Range("B2:B16"). Formula = "=INT(RAND()*100)"
Range(“B2:B16”). Copy
Range("C2"). PasteSpecial xlPasteValues
Range("D2"). Formula = "=A2*C2"
Range("D2"). Copy Destination:=Range("D3:D16")
Range("A16:D16"). Borders(xlEdgeBottom). LineStyle = xlDouble
Range("D18"). Formula = "=SUM(D2:D16)"
Range("C19"). Formula = "=MIN(C2:C16)"
Range("C2:C16"). Find(Range("C19"). Value, , xlValues, xlWhole). Select
ActiveCell. Interior. ColorIndex = 4
Range("A2:D16"). Sort key1:=Range("C1")
End Sub
3 Мова програмування vba
(Visual Basic for Application).
3.1 Типи перемінних, оголошення перемінних, область дії перемінних
Тип даних визначає множина припустимих значень, що може приймати зазначена перемінна. У VBA є такі основні типи даних:
Byte - байт, для запису цілих чисел від 0 до 255;
Boolean - логічний, може приймати одне з двох значень - True - істина, або False - неправда;
Integer - ціле число, може приймати значення від -32768 до 32767;
Long - довге ціле, у якому зберігаються числа до 2147483648;
Single – дійсне число з плаваючою комою, у якому зберігаються числа до 3,4*1038;
Double – дійсне число з плаваючою комою подвійної точності;
Currency - грошовий;
Date - дата і час;
Object - покажчик на об'єкт;
String - рядок символів;
Variant - будь-який тип даних, обумовлений при присвоюванні значень.
Оголошення
перемінної здійснюється операторами
Dim або Public. Dim може знаходитися в процедурі,
тоді перемінні є локальними
для
цієї процедури і не визначені поза нею.
Якщо оператор Dim знаходиться в загальній
області модуля (вище всіх процедур у
вікні модуля), те перемінні визначені
в будь-якій процедурі цього модуля, але
не визначені в інших модулях проекту.
Якщо перемінні оголошені оператором
Public у загальній області модуля, то вони
визначені у всіх модулях і формах
проекту, тобто є
глобальними.
Мал. 3. Вікно модуля з оголошенням перемінних.
Наприклад, на малюнку 3 приведене вікно модуля, у якому:
у загальній області об'являється перемінна St, що може бути використана у всіх модулях і формах проекту, тому що вона оголошена як глобальна перемінна;
у загальній області об'являється перемінна k, що може використовуватися у всіх процедурах даного модуля, але не існує в інших модулях і формах проекту;
у процедурі Пример1 об'являються три перемінних a, d, s різних типів, що можуть використовуватися тільки в цій процедурі.
