Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЭИ_ПОСОБИЕ_ЧАСТЬ_2

.pdf
Скачиваний:
12
Добавлен:
23.03.2015
Размер:
955.96 Кб
Скачать

1.Охарактеризувати роботу умовного оператора Іf.

2.Охарактеризувати роботу умовного оператора Select Case

3.Які логічні відносини можна використовувати в умовних операторах?

4.Перелічити логічні операції, використовувані у вираженнях.

5.Які Ви знаєте види циклів? Привести приклад.

6.Охарактеризувати конструкцію For ... Next

7.Охарактеризувати конструкцію Do Untіl... Loop

8.Охарактеризувати конструкцію Do Whіle... Loop

Чому ви навчилися?

Використовувати умовний оператор Іf.

Використовувати конструкцію For ... Next

Використовувати конструкцію Do Untіl... Loop

Використовувати конструкцію Do Whіle... Loop

Результат виконання лабораторної роботи повинний бути представлений у наступному виді:

1. Відеокадр вихідної таблиці

2.Листинг модуля VBA з керуючою конструкцією For…. Next має такий вигляд:

Sub AvtUchet()

Dim Imax, iMin, i As Integer

54

Imax = WorksheetFunction.Max(Range("C4:C10")) iMin = WorksheetFunction.Min(Range("C4:C10"))

For i = 4 To 10

If Cells(i, 3).Value = Imax Then

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbRed ElseIf Cells(i, 3).Value = iMin Then

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbGreen Else

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbBlack End If

Next i

End Sub

Створення інтерфейсу користувача

Одним з варіантів організації діалогу з користувачем є використання функцій MsgBox і ІnputBox.

Функція MsgBox

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

Функція має наступні параметри:

Першим параметром задається текст повідомлення. Другий параметр

(необов'язковий) являє собою суму визначених костант VBA (константи, використовувані в програмі лабораторної роботи, приведені в таблиці 1), що вказують у вікні повідомлення набір кнопок, значок, а також інші елементи інтерфейсу. Третій параметр (необов'язковий) визначає заголовок вікна повідомлення. Якщо його опустити, то заголовок буде містити назву додатка, у середовищі якого виконується VBA – код

Функция InputBox

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

Функція має наступні параметри:

55

Першим параметром задається текст повідомлення (запрошення). Другий параметр (необов'язковий) задає текст заголовка вікна. Третій параметр (необов'язковий) задає рядок за замовчуванням.

Таблиця 1.

Константа

Призначення

 

 

vbYesNo

У вікні повідомлення присутні кнопки Да и Нет

 

 

vbCritical

У вікні повідомлення присутнє значок

 

«Критическое сообщение»

 

 

Методичні вказівки до виконання завдання №7

Тема: Створення інтерфейсу користувача Ціль: Придбання практичних навичок розробки інтерфейсу користувача в середовищі VBA.

План

1.Вивчення організації інтерфейсу користувача за допомогою функцій виводу повідомлень користувачу і введення даних.

2.Модифікація процедури AvtUchet, передбачивши в процесі її виконання інтерфейс із користувачем.

Технологія виконання завдання

Постановка задачі: Модифікувати процедуру AvtUchet, організувати в процесі її виконання інтерфейс із користувачем.

Для решения поставленной задачи необходимо выполнить следующие действия:

1.Відкрити книгу MS Excel з лабораторними роботами.Перейти на рабочий листок «Автоматизований облік».

2.У середовищі VBA виконати модифікацію ппоцедуры AvtUchet:

2.1.Передбачити введення пароля для дозволу виконання розрахунку (використовувати функцію ІnputBox, третім параметром задати рядок за замовчуванням - "*******").

2.2.Передбачити повідомлення користувачу при виконанні розрахунку (функції MsgBox і Date), а також повідомлення при неправильному паролі й у ситуації, якщо розрахунок не проводився. Кожен рядок програмного

56

модуля процедури пояснити коментарем. Кожен рядок коментарю починається зі знака апостроф.

2.3. При висновку повідомлень (функція MsgBox) і при введенні пароля (функція ІnputBox) визначити свої заголовки діалогових вікон.

Контрольні питання

1.Що таке діалог користувача і ПЕОМ?

2.Які функції забезпечують діалог у середовищі VBA?

3.Для чого використовується функція MsgBox?

4.Охарактеризувати параметри функції MsgBox.

5.Яку роль грають визначені константи?

6.Охарактеризувати принцип роботи функції ІnputBox.

7.Які параметри використовуються у функції ІnputBox?

8.Як задати заголовки у вікнах повідомлень?

Чому ви навчилися?

Використовувати функцію MsgBox.

Використовувати визначені константи.

Використовувати функцію ІnputBox.

При виконанні процедури на екран будуть виведені наступні діалогові вікна:

57

Листинг модуля VBA має такий вигляд:

Sub AvtUchet1() ‘ Автоматизированный учет

Dim Imax, IMin, Result, Kod, i As Integer Dim User As String

Msg = "Будем продолжать работу? "

Kod = vbYesNo + vbCritical

M: User = InputBox("Введите пароль", , "*******")

If User = "Студент" Then

Imax = WorksheetFunction.Max(Range("C4:C10")) IMin = WorksheetFunction.Min(Range("C4:C10"))

For i = 4 To 10

If Cells(i, 3).Value = Imax Then

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbRed ElseIf Cells(i, 3).Value = iMin Then

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbGreen Else

Range(Cells(i, 1), Cells(i, 3)).Font.Color = vbBlack End If

Next i

MsgBox "Расчет проведен " & Date Else

MsgBox "Вы ввели неправильно пароль!!! " Result = MsgBox(Msg, Kod)

If Result = vbYes Then GoTo M

Else

If Result = vbNo Then

MsgBox "Расчет не проводился"

58

End If

End If

End If

End Sub

2. Опрацювання розділів програми, які не викладаються на лекціях

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

Згідно з програмою навчальної дисципліни у рамках модулів 3 і 4 на самостійне опрацювання пропонуються наступні теми:

1.Особливості створення баз даних у середовищі MS Excel. [ ]

2.Робота з об’єктами на рівні додатків.[]

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

При опрацюванні першої теми студенти повинні звернути увагу на наступні питання:

Правила створення баз даних (списків) у середовищі MS Excel.

Сортування даних у списках.

Використання форм для додавання і редагування даних списків.

Порядок фільтрації даних в списку.

Вставка проміжних підсумків в список.

При опрацюванні першої теми і для закріплення теоретичних знань по цій темі студентам пропонується виконати наступне завдання.

Завдання Сформувати базу даних "Фірма" (не менш 10 записів), що містить

зведення про автомобілі різних моделей представлених на продаж:

Код

Мод

Потужність

 

 

 

Заводська

Транспо

Загаль

моде

Колір

Оббивка

Кількість

ртні

на

ель

двигуна

ціна

лі

 

 

 

витрати

сума

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

59

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

У режимі "Форма" додати, видалити ряд записів з бази даних, знайти потрібний запис за заданим критерієм (код моделі).

Відсортувати дані:

по типу моделей, підвести підсумки по транспортних витратах моделей кожного типу;

по потужності двигуна, підвести підсумки по кількості моделей із заданою потужністю двигуна.

За допомогою структури списку вивести:

тільки загальні підсумки;

загальні і проміжні підсумки;

повний список.

Установити автофільтр для даної робочої таблиці:

вивести на екран інформацію тільки по заданій моделі;

показати дані про автомобілі, заводська ціна яких знаходиться в заданому

діапазоні.

Використовуючи розширений фільтр, сформувати вихідні таблиці, у яких включена:

інформація про задані моделі і визначену оббивку;

інформація про моделі заданого кольору або з визначеною оббивкою;

ціна на модель автомобіля максимальна;

інформація про моделі, загальна сума по який більше середньої суми.

При опрацюванні другої теми студентам необхідно вивчити наступні питання: об'єктна модель MS Excel, автоматизація проектів за допомогою елементів керування, удосконалення макросу. При вивченні цієї теми, крім інформації з літературних джерел, студенти можуть одержати інформацію в період виконання лабораторних робіт.

Розробка проекту з елементами управління

Мета: Придбання практичних навичок створення процедур та розробки елементів керування в середовищі VBA.

Завдання:

1. Запустити табличний процесор Excel.

60

2.Відчинити файл лабораторних робіт.

3.Перейти на новий лист та надати йому ім'я Лаб2.

4.Викликати макрорекордер – Сервис\Макросы\Начать Запись. У вікні "Запись макроса" ввести ім'я макросу – "Расчет".

5.При включеному макрорекордері створити у діапазоні комірок A1:F9 таблицю за формою таблиці 2.1, у такому порядку:

5.1.створити форму таблиці, для чого:

5.1.1.об'єднати, де необхідно комірки;

5.1.2.задати параметри вирівнювання (Формат ячеек/Выравнивание);

5.1.3.задати формат числа з двома десятковими розрядами (Формат ячеек/Число);

5.1.4.задати формат для виводу чисел у останній колонці у доларовому форматі.

5.1.5.задати границі;

5.2.ввести дані в таблицю, крім колонок "Сумма" (виділені заливкою);

5.3.суму у гривнях у комірці E4 обчислити за формулою =C4*D4 і за допомогою

автозаповнювання скопіювати її в комірки E5:E8;

5.4.для обчислювання суми у доларах створити таблицю за формою табл. 2.2.

5.5.суму у доларах у комірці F4 обчислити за формулою =E4\$I$1 і за допомогою

автозаповнювання скопіювати її в комірки F5:F9;

5.6. загальну суму у гривнях обрахувати у комірці E9 за допомогою функції

"автосуммирование".

6.Зупинити макрорекордер Сервис\Макросы\Остановить Запись, або натиснути кнопку "Остановить Запись" на панелі макрорекордера.

7.Перейти в VBA. Переглянути створену процедуру і відкоригувати її, якщо необхідно. У додатку 1 наведено варіант тексту процедури "Расчет"

8.Створити процедуру для очищення листа, тобто вилучення створених таблиць.

Для чого:

8.1.викликати макрорекордер і надати процедурі ім'я Clear;

8.2.виділити таблиці й за допомогою клавіші Del видалити данні;

8.3.скопіювати формат будь-якої комірки листа, наприклад I13 (клацнути на

комірці, та скопіювати її в буфер), а потім, за допомогою кнопці на панелі інструментів

"формат по образцу" (пензлик), скопіювати цей формат у діапазон комірок, що були використані для таблиць (A1:F9 та H1:I1);

61

8.4.Виділити стовпці A-I, та встановити для них ширину 8,11 –

Формат\Ширина столбца

8.5.Зупинити макрорекордер Сервис\Макросы\Остановить Запись, або

натиснути кнопку "Остановить Запись" на панелі макрорекордера.

8.6.Перейти в VBA. Переглянути створену процедуру і відкоригувати її, якщо

необхідно. У додатку 1 наведено варіант тексту процедури "Clear"

9. Створити на листі 2 кнопки (панель Форми/Кнопка) для виклику макросів.

Назвати кнопки "Расчет" та "Очистить".

10.Призначити відповідні макроси кнопкам.

11.Перевірити роботу елементів керування.

12.Зберегти файл на диску.

Методичні вказівки

В Додатку 1. наведені процедури "Расчет" та "Clear", що створені за допомогою макрорекодердера. Макрорекордер записує всі ваші дії, у тому числі і зайві. Ви можете переглянути результат роботи макрорекордера та відкоригувати процедуру потрібним чином

Таблиця 2.1.

 

 

 

 

 

A

 

 

B

 

 

C

 

 

D

 

 

E

 

 

F

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

Смета затрат на материалы

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

Сумма

 

3

 

 

 

п/

 

Наименование

Количество

 

Цена

 

грн.

 

долл.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

п

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

1

 

 

Дискета

10

2,50

 

25,00

 

 

$4,63

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

Инструмент

1

245,80

 

245,80

 

 

$45,52

 

 

6

 

3

 

 

Бумага

5

22,40

 

112,00

 

 

$20,74

 

 

 

 

 

 

 

 

 

 

7

 

4

 

 

Картриджи

2

135,89

 

271,78

 

 

$50,33

 

 

8

 

5

 

 

Телеф. Аппарат

5

175,45

 

877,25

 

 

$162,45

 

 

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$283,67

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1531,83

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблиця 2.2.

 

H

I

1

Курс доллара

5,4

Після опрацювання цих розділів програми студенти можуть перевірити свої знання за допомогою контрольних питань і тестів:

1.Як можна швидко виконати сортування списку?

2.Які компоненти містить вікно Расширенный фильтр?

3.Чи можна створювати декілька списків на одному робочому листі?

4.Команди Данные> Итоги використовуються для розрахунку:

62

1)суми по стовпцях;

2)проміжних підсумків;

3)будь - яких функцій.

5.Перед активізацією команд Данные>Фильтр>Расширенный фильтр

необхідно:

1)розрахувати суму значень усіх стовпців;

2)відсортувати значення;

3)створити критерій умов.

6.Что представляет собой объектная модель MS Excel?

7.Что такое макрорекодер?

Кобъектам можно отнести:

1)Графический объект;

2)Диапазон ячеек;

3)Диалоговое окно

4)Все перечисленное верно.

3. Підготовка до контрольних заходів

На самостійну роботу студента при підготовці до одного контрольного заходу виділяється 9 годин.

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

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

Студентам можуть бути запропоновані тестові питання такого типу: Как выполнить редактирование даннях в ячейке Excel?

Как отменить последнее изменение рабочего листа? Как переименовать лист в Excel?

Что такое форматирование даннях электронных таблиц

...............................................................................................

63