- •1. Теоретичні питання 76
- •2. Тести 76
- •3. Практичні завдання 76
- •1. Теоретичні питання 90
- •2. Тести 90
- •3. Практичні завдання 90
- •1. Теоретичні питання 103
- •2. Тести 103
- •3. Практичні завдання 103
- •Алгоритми. Алгоритмічна мова
- •1. Алгоритм і його властивості
- •2. Поняття алгоритму
- •3. Схеми алгоритмів
- •4. Графічне зображення різних видів обчислювальних процесів
- •4.1. Графічне зображення лінійних обчислювальних процесів
- •4.2. Графічне зображення розгалужених обчислювальних процесів
- •4.3. Графічне зображення циклічних обчислювальних процесів
- •1. Створення і управління макросами
- •Запис макросу
- •Зміна макросу
- •Перегляд і зміна макросів
- •Управління макросами
- •Безпека макросів
- •2. Способи виконання макросу
- •Запуск макросу на виконання в Microsoft Excel
- •Запуск макросу на виконання з редактору Visual Basic
- •Основні елементи мови Visual Basic
- •1. Організація програми на мові vb для Excel
- •2.Створення і вживання процедур
- •4. Типи даних
- •5. Зона дії змінних і процедур
- •6. Масиви
- •7. Константи
- •8. Перетворення типів
- •12.Операції vb
- •13.Використання функцій vb
- •14.Строкові функції
- •15.Функції дати і часу
- •16.1.Методи об'єктів
- •16.2. Контейнери і набори об'єктів
- •17.Використання властивостей, що характеризують активність
- •18.Використання властивостей, що характеризують вміст
- •19. Властивості форматування
- •20.Методи роботи з таблицями
- •22. Створення і вживання функцій
- •23.1.Логічні вирази
- •23.2.Структура оператора if - then
- •24.Структура оператора Select Case
- •25. Неструктурований перехід
- •26.1.Циклічна структура for – next
- •26.2.Оператор for each - next (для кожного - наступного)
- •27. Логічні цикли
- •27.1.Вживання циклу do-loop
- •1. Вживання функції MsgBox()
- •1.1. Створення простого вікна повідомлення
- •1.2. Додавання командних кнопок у вікно повідомлення для створення діалогового вікна
- •1.3. Набуття значень від функції MsgBox()
- •2. Вживання функції InputBox()
- •3. Вживання діалогових вікон інших типів
- •4. Виклик діалогових вікон додатка
- •Р исунок 1. Нова, чиста сторінка діалогу Excel
- •29. Розташування об'єктів форми в бланк (вікно діалогу)
- •29.1.Об'єкт "Командна кнопка"
- •29.3.Об'єкт "Вікно редагування'
- •29.4.Об'єкт "Групове вікно"
- •29.5.Об'єкт "Контрольний індикатор"
- •29.6.Об'єкт "Кнопка вибору"
- •29.7.Об'єкт "Вікно списку"
- •29.8.Об'єкт "Випадаюче вікно"
- •29.9.Комбінований об'єкт "Вікно список-редагування"
- •29.10.Комбінований об'єкт "Вікно випадаючий список-редагування"
- •29.11.Об'єкт "Лінійка прокрутки"
- •29.12.Об'єкт "Спіннер"
- •30. Підключення процедур до об'єктів діалогового вікна користувача
- •31. Відображення діалогового вікна користувача
- •32.Файли послідовного доступу
- •32.1.Читання і запис послідовних файлів
- •32.2.Відкриття файлу
- •32.3.Закриття файлу
- •32.4. Запис у файл за допомогою оператора Print
- •32.5.Запис у файл оператором Write
- •32.6.Читання з файлу
- •33.Запис даних у файл довільного доступу
- •33.1.Читання і запис файлів довільного доступу
- •33.2.Відкриття файлу
- •33.3. Закриття файлу довільного доступу
- •33.4. Визначення структури та довжини запису
- •33.5.Запис даних у файл
- •33.6. З читування даних з файлу
15.Функції дати і часу
Функції дати і часу забезпечують перетворення з текстового формату дати або часу в послідовний номер дати (або послідовний номер часу, якщо цей номер включає лише час). Послідовний номер дати зберігає дату і час в одному числі з плаваючою крапкою. Дата зберігається у вигляді номера дня, починаючи від 01.01.1900, а час – у вигляді дробової частини дня. Таким чином 0.5 – полудень, а 0.75 – 18:00. Якщо ви рахуєте два послідовні номери дати, то отримуєте кількість днів між цими двома датами. Функції дати і часу приведені в Таблиці 7.
Таблиця 7.
Функція |
Опис |
Date() |
Встановлює або повертає поточну дату |
Time() |
Встановлює або повертає поточний час |
Now() |
Повертає поточну дату і час |
DateSerial(х) |
Перетворює х до вигляду: рік-місяць-день |
DateValue(х) |
Символьне представлення дати х |
TimeSerial(у) |
Перетворює у до вигляду: годинник-хвилини-секунди |
TimeValue(у) |
Символьне представлення часу у |
Timer(х) |
Повертає часовий інтервал від півночі |
Day(х) |
Перетворює послідовну дату х в день місяця |
Month(х) |
Перетворює послідовну дату х в місяць року |
Weekday(х) |
Перетворює послідовну дату х в день тижня |
Year(х) |
Перетворює послідовну дату х в рік |
Hour(у) |
Перетворює послідовну дату у в години дня |
Minute(у) |
Перетворює послідовну дату у в хвилини в годиннику |
Second(у) |
Перетворює послідовну дату у в секунди в хвилинах |
Де зміні х та у типу Date, але х встановлює дату, а у – час.
Контрольні завдання по темі
1. Теоретичні питання
2. Тести
3. Практичні завдання
Доступ до об'єктів Excel з VBА
16.Об'єкти в мові VBА
Об'єкт – це те, чим можна управляти за допомогою програми на мові VBА, наприклад, кнопка, аркуш, книга, діаграма, елемент таблиці і так далі.
Кожен об'єкт володіє деякими характеристиками або властивостями. Наприклад, діалог може бути видимим або невидимим в даний момент на екрані. Змінюючи властивості, можна змінити характеристики об'єкту.
Об'єкти також мають методи. Методи – це те, що можна робити з об'єктами.
16.1.Методи об'єктів
Методи – це команди, за допомогою яких відбувається деяке перетворення об'єктів.
Синтаксис виклику методу об'єкту повинен мати вигляд:
Об'єкт.Метод[аргументи]
У квадратних дужках знаходиться необов'язковий елемент програмного коду, тобто аргумент.
Приклад: Range(“B3:F5”).Select – вибирається діапазон клітин B3:F5
Range(“Результати”).Table Cells(4,4) Cells(8,7) – тут створюється таблиця даних з ім'ям Результати, а аргументи вказують на початкове і кінцеві клітини (таблиці).
16.2. Контейнери і набори об'єктів
Excel складається з безлічі об'єктів: книг, листів, листів з діаграмами і т.д, причому деякі з цих об'єктів містять інші об'єкти. Наприклад, книга містить листи, листи містять рядки і стовпці .
Об'єкт самого високого рівня – Application. Для вказівки потрібного об'єкту в контейнері, необхідно вказати його ім'я після крапки, яка слідує за ім'ям об'єкту, – контейнера.
Наприклад:
Вooks(“Р_00_51”).Sheets(«1»).Delete,
де books(“Р_00_51”) – контейнер (книга з іменем “Р_00_51”) , Sheets(«1») – об'єкт (лист з іменем «1»), Delete – метод, тобто відбувається видалення листа «1» в книзі Р_00_51.
Application.Workbook(“Р_00_51”).Close,
відкрити у додатку робочу книгу Р_00_51.
Набор об'єктів – це контейнер для всіх об'єктів певного класу.
Workbook або books – об'єднує всі поточні відкриті робочі папки (книги).
WorkSheet – об'єднує всі листи у відкритих робочих папках (книгах).
Sheets – об'єднує всі сторінки будь-яких типів в робочій книзі.
Charts – об'єднує всі сторінки діаграм в робочій книзі.
Об'єкт Range – ячейка/діапазон елементів таблиці.
Приклад запису:
Workbook(“ім'я книги”).Sheets(“ім'я листа”)
Sheets(“ім'я листа”).Range(“ім'я клетини/області”)
16.3. Об'єкт Range
Під об'єктом Range розглядаються:
одна клітина;
діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин);
набір не суміжних клітин.
Існує декілька методів, що дозволяють описувати об'єкт Range: Union; Range; Cells; Offset.
Метод Range – використовується для опису об'єкту Range, що може бути одна клітина, діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин)
найбільш поширений метод, використовує, як аргументи одну або два посилання на клітину і повертає об'єкт Range (посилання на стовпець-буква /рядок-число): Range(«посилання на об’єкт»).Метод
Приклад методу Range:
Sheets (“Лист1”).Range(“B2”).Value = 1
результат: на аркуші з ім'ям Лист1 клітка В1 набуває значення рівне 1.
Sheets (“Лист1”).Range(“A4”,”C6”).Value = 2
результат: на аркуші з ім'ям Лист1 діапазон кліток А4:С6 набуває значення рівне 2.
WorkSheets (“Лист1”).Range(“B7:C9”).Value = 3
результат: на аркуші з ім'ям Лист1 діапазон кліток В7:С9 набуває значення рівне 3.
Метод Cells – використовується для опису об'єкту Range, що є одною клітиною.
отримуючи як аргументи два цілі числа, повертає об'єкт Range, що містить одиничну клітину: Cells(n,m).Метод, де аргументи: n - номери рядка і m - колонки вибраної клітини або ім’я стовпчика.
Цей метод найбільш зручний для вибору групи клітин по одній – змінюючи значення аргументу (в циклах, де номер рядка/стовпчика потрібно змінювати).
Приклад:
Sheets (“Лист1”).Cells(1,2).Value = 1
результат: на аркуші з ім'ям Лист1 клітка В1 набуває значення рівне 1.
Sheets (“Лист1”).Cells(1,“D”).Value = 2
результат: на аркуші з ім'ям Лист1 клітка D1 набуває значення рівне 2.
For I = 1 To 10
Sheets (“Таблиця”).Cells(I+5, 2).Value = I
NEXT I
результат: на аркуші з ім'ям Таблиця клітка В6 набуває значення рівне 1, потім I зростає на 1, тому клітка В7 набуває значення рівне 2, потім знову I зростає на 1, тому клітка В8 набуває значення рівне 3, і так далі до значення I =10, тому до клітки В15, яка набуває значення рівне 10.
Метод OffSet – – використовується для опису об'єкту Range, що може бути одна клітина, діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин)
синтаксис аналогічний Cells, але об'єкт Range завжди задається відносно верхнього лівого кута поточного. Метод Offset найчастіше застосовується для створення об'єкту Range відносно поточного активного об'єкту Range таблиці. У методі Offset використовується два аргументи: Offset (n,m).Метод, де n - індекс рядка і m - індекс колонки, які є зміщенням відносно поточного об'єкту Range.
Індекси змінюються від 0 до n для методу Offset, а для методу Cells – від 1 до n.
Наприклад:
Sheets (“Ліст1”).Range(“A1:B10”). Offset(3,4) - посилання на клітини E4:F13
Sheets (“Ліст1”).Range(“A1”).Offset(2,3) - посилання на клітину D3
Для створення об'єктів Range відносно деяких об'єктів Range краще використовувати метод Offset, це робить програму однозначнішою.
Метод Union – використовується для об'єднання розрізнених груп клітин в один об'єкт Range (набір не суміжних клітин, об'єктів Range)
.
Union (Sheets (“Лист1”).Range(“D1:F2”), Sheets (“Лист1”).Range(“E7:G9”)).Value = 43
результат: на аркуші з ім'ям Лист1 діапазон кліток D1:F2 E7:G9 набуває значення рівне 43.