Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС для 21-22 (2014-15).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
574.46 Кб
Скачать

Завдання до срс №6

Тема: Робота з функціями VBA у середовищі Excel.

Мета: вивчити роботу функцій обміну даними з користувачем MsgBox, InputBox.

Теоретичні відомості

І. Функції обміну даними з користувачем.

  1. функція MsgBox має наступний синтаксис:

MsgBox (Prompt [,Buttons] [, Title] [, HelpFile, Context])

Розглянємо тільки ті пераметри, які будемо використовувать в роботі.

Prompt (повідомлення) - це текст того повідомлення, що повинно відображатися в діалоговому вікні. Це – обов'язковий аргумент, всі інші – ні.

Title (заголовок) - це текст, що буде поміщений у рядок заголовка діалогового вікна. Якщо цей параметр буде опущений, то в заголовку буде "Microsoft Excel".

Як було відзначено, тільки один параметр "повідомлення" обов'язковий. Якщо ж 2-й параметр (необов'язковий) пропущений, то необхідно включати коми, що відмічають місце для другого аргументу, інакше буде помилка.

Щоб зробити більш легким використання функцій, що мають необов'язкові аргументи, VBA дає можливість використовувати іменовані аргументи функцій.

Для присвоєння значення іменованому аргументу використовують символ :=. При використанні іменованих аргументів не потрібно включати коми для необов'язкових аргументів.

MsgBox Prompt:="Введіть ... .", Title:= "Вікно повідомлень".

2. Одержання даних від користувача.

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

Інтерактивна процедура - це процедура, що обмінюється інформацією зі своїм користувачем, відображуючи повідомлення і одержуючи введення даних. Одержуючи інформацію від користувача, інтерактивна процедура може виконувати ті самі операції, використовуючи різні дані. Дані, що вводяться користувачем, називаються вхідними даними (input). Щоб одержати вхідні дані від користувача, використовують функцію InputBox.

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

Функція InputBox має наступний синтаксис:

InputBox (Prompt [, Title] [, Default] [, Хpos] [, Уpos] [, HelpFile , Context])

Нам потрібні будуть два параметри:

Prompt (повідомлення) - це підказуюче повідомлення, що потрібно вивести в діалоговому вікні - обов'язковий елемент. Інші – ні.

Title (заголовок) - це текст, що буде поміщений у рядок заголовка діалогового вікна. Якщо цей параметр буде опущений, то в заголовку нічого не буде.

При виклику функції InputBox можна використовувати іменовані аргументи.

Приклад:

а=InputBox(Prompt:="Введіть значення змінної а", Title:="Введення даних")

У додатку MS Excel функція InputBox має додатковий необов'язковий параметр Type, що задає тип значення, що вводиться. Це можна використовувати в якості додаткового контролю інформації, що вводиться.

Параметр Type може приймати наступні значення:

Значення

Що означає

0

Формула

1

Число

2

Текст (рядок)

ПОРЯДОК ВИКОНАННЯ РОБОТИ

І. Робота з вікном повідомлень MsgBox.

  1. Завантажте програму Excel і відкрийте свій файл.

  2. Для виклику редактора VBA натисніть комбінацію Alt+F11. Якщо на екрані відсутнє вікно для введення коду, виконайте команду Insert→ Module1(Code)

  3. Введіть текст першого макросу з іменем Привет.

Sub Привет()

Dim Hello As String ‘оголошена змінна Hello символьного типу

Hello = "Привет!" змінної Hello задане значення «Привет»

Titles$ = "Окно приветствия" заголовок вікна

MsgBox Hello, , Titles$

End Sub

  1. Для повернення у вікно програми Excel можна:

а) закрити вікно редактора;

б) виконати команду File → Close and Return to Microsoft Excel;

в) натиснути комбінацію клавіш Alt+Q.

  1. Запустити макрос на виконання.

Це можна виконати не виходячи з редактора VBA. Курсор помістити в будь-який рядок тексту макросу, меню Run→ команда Run Sub/Userform або функціональна клавіша F5.

  1. Редагування раніше створеного макросу:

а) натиснути Alt+F8;

б) у діалоговому вікні, що з'явилося, виділити макрос Привет → команда Изменить

в) поверніться у вікно Microsoft Excel і запустіть макрос на виконання.

7.Запишіть у зошит текст введеного вами макросу.

ІІ. Робота з функцією одержання даних від користувача InputBox.

  1. Введіть наступну процедуру. Її текст можна вводити в цьому ж модулі. Програма буде відокремлювати процедури горизонтальною рисою.

Sub Прямоугольник()

Dim a, b, s

Title = "Ввод исходных данных"

a = InputBox("Введите a", Title)

b = InputBox("Введите b", Title)

s = a * b

MsgBox "Площадь=" & s, , Title:="Результат"

End Sub

Примітка: у рядку, що містить виведення вікна повідомлень є символ &, що об'єднує два значення: текст «Площадь» та її числове значення.

Запустіть процедуру на виконання.

  1. Запишіть текст процедури в зошит із поясненням призначення кожного рядка.

ІІІ. Завдання для самостійної роботи.

Складіть процедуру, яка б обчислила наступний вираз

Дані значень а і x повинні запитуватися від користувача. Виконати для а=1,4, х=3,48.

Рекомендації: щоб одержаний результат округлити до двох знаків після коми, після рядка з формулою для визначення Y введіть рядок y = Application.Round(y, 2).

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