- •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. З читування даних з файлу
32.3.Закриття файлу
Після того, як завершили роботу з файлом, його необхідно закрити за допомогою оператора Close. Як аргумент оператора Close використовується файлове число, що вказує на те, який саме файл потрібно закрити.
Close #файлове_число
Якщо опустити аргумент файлове_число, то Visual Basic закриє всі відкриті файли.
32.4. Запис у файл за допомогою оператора Print
Якщо файл відкритий, то для запису в нього даних можна використовувати оператора Print. Дані, записувані оператором Print, є текстом, подібним тому, який видається на принтер.
Для прикладу, спробуйте виконати наступних операторів на панелі Immediate вікна Debug (View → Immediate Window):
Командний рядок |
Результат |
Print "Загальний привіт" |
Загальний привіт |
Print 5 |
5 |
а = 5 Print а |
5 |
Print - друкує в дисковий файл, лише його результати з'являються не на панелі Immediate, а у відкритому для запису файлі.
Якщо помістити в рядок для друку декілька елементів, розділених комами, то вони будуть надруковані в блоках, заповнених пропусками і розділених фіксованими табулостопами через кожних 14 символів.
Якщо замість ком використовувати символ (;) між числами, змінними, то надруковані елементи міститимуть 2 пропуски, а якщо – між деяким текстом, то надруковані елементи не міститимуть пропусків:
Командний рядок |
Результат |
Print "один", "Два", "Три", "Чотири" |
Одін Два Три Чотири |
Print "Один";"Два";"Три";" Чотири " |
ОдинДваТриЧотири |
Print 1; 2; 3; 4 |
1 2 3 4 |
Для управління друком слід використовувати функцію Format(). Функція отримує два аргументи, а повертає рядок, відформатованих данних. Першим аргументом є змінна, що містить число, яке потрібно надрукувати, а другий аргумент містить рядок форматування, що визначає форму, в якій потрібно надрукувати це число. Функція форматування подібна створеню користувацького формату для клітини з даними.
Приклад:
Якщо, а=1234.567
Format а, (а, "#,###.00"), Format(а, "#.0")
1234.567 1,234.57 1234.6
Якщо, а=0.1234
Format а, (а."#,###.00"). Format(а,"0.00"), Format(а,"00.00")
0.1234 .12 0.12 00.12
А для друку в дисковий файл:
Print #файлове_число, список_ аргументів
де файлове_число визначає відкритий файл, а список_аргументів містить те, що потрібно надрукувати.
Так, для запису попередніх значень у файл EXEMPL1.DAT:
Open " EXEMPL1.DAT" For Output As 1
‘Потім записуємо у файл дані, після чого закриваєте його:
Print #1, " Загальний привіт "
Print #1, 5
а = 5
Print #1, а
Print #1, 1; 2; 3; 4
Print #1, "Одін", "Два", "Три", "Чотири"
а = 1234.567
Print #1, а, Format(а,"#,###.00), Format(а,"0,00"), Format(а,"00.0")
а = 0.1234
Print #1, а, Format(а,"#,###.00), Format(а,"0,00"), Format(а,"00.00")
Close #1
32.5.Запис у файл оператором Write
При використанні оператора Print дані, записувані в дисковий файл, формуються в придатну для читання форму, подібну до текстового документа. Якщо ви передбачаєте читати ці дані програмами на Visual Basic, то їх слід записувати не оператором Print, а оператором Write. Оператор Write працює подібно до оператора Print, але зберігає існуючі лапки і розділяє дані, що виводяться, комами. Ці коми і лапки спрощують у Visual Basic визначення кінця одного елементу даних і початку іншого. Якщо передбачається зберегти дані, а потім прочитати їх програмою, то замість оператора Print скористайтеся оператором Write.
Оператор Write відділяє кожен елемент даних коми і бере кожну строкову величину в лапки. Рядки, повернені функцією Format(), також розміщають в лапках. Використання лапок і ком для розділення окремих елементів даних значно спрощує вживання оператора Input (описуваного в наступному пункті). Без них було б практично неможливо визначити, де кінчається один записаний елемент і починається наступний.
Розглянемо простий приклад збереження даних побудованої таблиці в файл послідовного доступу на диску Е: (e:/pr1.txt). Перший стовпчик побдованної таблиці буде складатися з значення змінної x, а другий - значення змінноїі y цілого типу. Перше значення х задає користувач, через вікно запиту, а кожне наступне зростає на 1, значення у розраховується у=х2 . Кількість рядків в таблиці складає 10.
Sub pr1()
Open "e:/pr1.txt" For Output As 1
Dim x As Integer, i As Integer, y
x = InputBox("x= ")
Write #1, " X "; ":"; " Y"
For i = 1 To 10
y = x ^ 2
Write #1, Format(x, "###000"); ":"; Format(y, "######")
x = x + 1
Next i
Close #1
End Sub