Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab7.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
580.61 Кб
Скачать

Введення та виведення даних за допомогою вбудованих вікон

Для введення/виведення даних у VBA використовують вбудовані вікна, які викликаються за допомогою двох стандартних функцій, параметри яких задають зовнішній вигляд та функціональні особливості діалогу.

Функція InputBox відображає вікно діалогу, яке дозволяє користувачу вводити у текстовому полі дані. Стандартними елементами такого вікна є керуючі кнопки ОК (підтверджує дії) і Cansel ( відміна дії).

Формат функції: InputBox(“підказка”, [заголовок], [значення])

Результатом виклику функції InputBox є значення, введене користувачем у текстове поле, яке присвоюється відповідній змінній.

Наприклад оператор kurs_dol = InputBox("Курс доларів США", "Обмін валюти") задає діалогове вікно надане на рис. 3. – змінній kurs_dol присвоєтьється число введене з клавіатури, тобто 5,05.

Функція MsgBox дозволяє вивести на екран діалогове вікно, для відображення будь-якої інформації або повідомлення, наприклад шуканого результату.

Формат функції: MsgBox “підказка”, [кнопки], [заголовок]

Вікно виведення результатів не має текстового поля для введення даних і відображається завжди у центрі екрану. Воно може мати декілька керуючих кнопок, за замовчанням задається одна кнопка ОК.

Наприклад функція, яка виводить на екран діалогове вікно надане на рис. 4. така

MsgBox "Сума у Євро =" & CStr(Suma_dol) & ” євро”, ,” обмін валют”

Функції користувача

В Excel існують вбудовані функції, які доступні після інсталяції Excel (математичні, інженерні, фінансові, логічні, статистичні й т.д), і функції користувача розроблені за допомогою вбудованої мови програмування.

Користувач також може створювати свої власні функції і користуватися ними як і стандартними. Такі функції викликаються за допомогою Майстра функцій і поміщаються вони у категорії Определенные пользователем. Функції на відміну від процедур/макросів, неможливо запустити безпосередньо з редактора VBA.

Формат опису функцій:

Function <назва функції>(<список аргументів>)

<тіло функції>

End Function,

де назва функції (її ім‘я) однозначно визначає дану функцію серед усієї множини функцій;

список аргументів функції – це список змінних, які використовуються як вхідні дані для обчислень у функції і задаються при її створенні. Такі аргументи називаються формальними параметрами. Змінні у списку аргументів розділяються комами, наприклад: f(x, y, z). Аргументи, які використовуються при виклику функції називаються фактичними параметрами, наприклад: f(A3,B3,C3).

Тіло функції складається з операторів мови програмування VBA, що реалізують алгоритм обробки даних, втілений у даній функції.

Завдання до лабораторної роботи

Завдання 1. Створити макрос. Необхідно створити макрос з ім’ям “Сума”, що обчислює значення функції W= a + b та перехід на Лист2 у відкритій робочій книзі. Дані вводяться: в діапазон клітинок А2:С2 заголовки стовпців, в клітинки А3 і В3 початкові дані, в клітинку C3 – результат суми значень клітинок А3 і В3 і робить перехід на Лист2.

Для запису макросу виконуємо наступну послідовність дій:

1. Створюємо нову Книга1.xls у папці Модуль 3/Лаб 7 особистої папки. Даємо їй назву Сума.xls.

2. Вибираємо команду меню Сервис/Макрос/Начать запись. Відкриється діалогове вікно Запись макроса (див. рис. 2).

3. Вводимо із клавіатури ім’я макросу “Сума” і задаємо сполучення клавіш натисканням на букву “w”. Надалі цей макрос буде виконуватися при натисканні комбінації клавіш Ctrl+w.

4. Клацаємо на кнопці ОК. Якщо була активна панель інструментів Visual Basic, на ній з’явиться кнопка Остановить запись, що говорить про те, що можна виконувати дії для макросу.

5. Переходимо на Лист1, для цього клацаємо на ярличку Лист1.

6. Виділяємо клітинку А1 і вводимо “Обчислення функції W”.

6. Виділяємо клітинку А2 і вводимо змінну ‘a”.

7. Виділяємо клітинку В2 і вводимо змінну “b”.

8. Виділяємо клітинку С2 і вводимо змінну “W”.

9. Виділяємо клітинку А3 і вводимо будь-яке число, наприклад 15.

10. Виділяємо клітинку В3 і вводимо будь-яке число, наприклад 32.

11. Виділяємо клітинку С3 і вводимо формулу =А3+В3.

12. Переходимо на Лист2, для цього клацаємо на ярличку Лист2.

13. Клацаємо на кнопці Остановить запись або вибираємо команду Сервис/Макрос/Остановить запись для завершення запису макросу.

Рис. 5. Вид вікна програмного коду з макросом

У результаті наших дій формується процедура. Щоб її переглянути, потрібно виконати команду Сервис/Макрос/Макросы, вибрати у вікні діалогу макрос “Сума” і натиснути кнопку Изменить. Після цього ми попадаємо в режим редактора Visual Basic, де в спеціальному вікні відображається програмний код макросу (рис. 5).

Розглянемо команди створеного макросу.

Range("A1").Select виділення клітинки А1

ActiveCell.FormulaR1C1 = "обчислення функції W" уведення тексту у виділену клітинку

Range("A2").Select виділення клітинки А2

ActiveCell.FormulaR1C1 = "a" уведення тексту a у виділену клітинку

Range("B2").Select виділення клітинки B2

ActiveCell.FormulaR1C1 = "b" уведення тексту b у виділену клітинку

Range("C2").Select виділення клітинки C2

ActiveCell.FormulaR1C1 = "W" уведення тексту W у виділену клітинку

Range("A3").Select виділення клітинки А3

ActiveCell.FormulaR1C1 = "15" уведення числа 15 у виділену клітинку

Range("B3").Select виділення клітинки B3

ActiveCell.FormulaR1C1 = "32" уведення числа 32 у виділену клітинку

Range("C3").Select виділення клітинки С3

ActiveCell.FormulaR1C1 = "=RC[-2]+RC[-1]" уведення формули у виділену клітинку

Sheets("лист2").Select ‘перехід на Лucm2.

Завдання 2. Обмін валюти. Клієнту банку треба обміняти певну суму гривень на долари США або євро. Скласти блок-схему та програму, яка обчислює скільки доларів США або євро клієнт банку отримає.

Початкові данні: курс долара, курс євро, сума гривень. Вихідні дані: сума у доларах, сума у євро. Обчислення виконується за формулами:

сума доларів = сума гривень / курс долара

сума євро = сума гривень / курс євро

Алгоритм розв’язання задачі надається у вигляді блок-схеми.

П рограма:

Для розв’язання поставленої задачі необхідно виконати такі дії.

  1. Створити нову Книга2.xls у папці Модуль 3/Лаб 7 особистої папки. Дати їй назву Валюта.xls.

  2. Вибрати команду меню Сервис/Макрос/Редактор Visual Basic або натиснути комбінацією клавіш [Alt+F11].

  3. Вибрати команду меню Insert/Module. У вікні програмного коду ввести з клавіатури програму.

  4. Запустити програму на виконання за допомогою меню Run/Run або F5.

Якщо усе зроблено вірно, з’являться вікна введення даних (рис. 6), а також вікно виведення результату роботи програми (рис. 7).

Рис. 6. Вікна введення даних

Рис. 7. Результат роботи програми

Завдання 3. Використання функції користувача. Відомі довжини трьох сторін трикутника a, b, c. Обчислити площу трикутника за формулою Герона та радіус вписаного кола. Початкові данні: сторони трикутника a, b, c. Вихідні дані: площа S та радіус r. Обчислення виконується за формулами:

Створити функцію користувача з іменем РАДИУС_ВПИС_ОКР. Обчислення організувати на робочому листі Microsoft Excel з використанням розробленої функції користувача.

Для розв’язання поставленої задачі необхідно виконати такі дії.

  1. Створити нову Книга3.xls у папці Модуль 3/Лаб 7 особистої папки. Дати їй назву Радіус.xls.

  2. Вибрати команду меню Сервис/Макрос/Редактор Visual Basic або натиснути комбінацією клавіш [Alt+F11].

  3. Вибрати команду меню Insert/Module. У вікні програмного коду ввести з клавіатури програму.

  1. Перейти до електронної книги Excel та оформити електронний лист для виконання розрахунків величини радіусу вписаної окружності (рис. 8).

Рис. 8. Оформлення розрахунків на листі Excel

  1. Вхідні дані для обчислень (сторони трикутника) розташуємо в комірках A3, B3, C3, а в комірку A5 введемо формулу =РАДИУС_ВПИС_ОКР(A3; B3; C3), після чого в указаній комірці з‘явиться розраховане значення радіусу вписаного кола.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]