Програмування алгоритмічною мовою VBA

Міністерство освіти і науки України
Полтавський національний технічний університет
імені Юрія Кондратюка
Факультет будівельний
Кафедра будівельної механіки
РОЗРАХУНКОВО-ГРАФІЧНА
РОБОТА
„Програмування алгоритмічною мовою VBA”
Індивідуальний навчальний план №08032
студент гр. 202-БП
Виконав Загородній Я.Ю.
Керівник: Мартьянов В.В.
Полтава 2009

/>Завдання нарозрахунково-графічну роботу № 3
„Програмуванняалгоритмічною мовою VBA”
Урозрахунково-графічній роботі необхідно виконати розв’язання задач мовоюпрограмування VBA з використанням алгоритмів лінійної, розгалуженої таітераційної циклічної структури. При вирішенні кожної задачі необхіднорозробити постановку задачі, блок-схему алгоритму, таблицю ідентифікаторів татекст програми мовою VBA. Складену програму необхідно протестувати,використавши контрольний приклад згідно завдання. Вихідні дані для вирішеннякожної поставленої задачі потрібно брати згідно номеру варіанту із „Методичнихвказівок до виконання лабораторних робіт на тему “Програмування мовою VBA” іздисципліни “Інформатика”. При цьому у відповідних розділахрозрахунково-графічної роботи вирішуються наступні задачі:
1) Створеннявласної панелі інструментів користувача для розташування на ній кнопок викликупрограм лінійної, розгалуженої та ітераційної циклічної структури.
2) Розробкаалгоритму та програми лінійної структури для розрахунку значень заданих функційзгідно номера варіанта відповідного розділу „Методичних вказівок до виконаннялабораторних робіт на тему “Програмування мовою VBA” із дисципліни“Інформатика”.
3) Розробкаалгоритму та програми розгалуженої структури для розрахунку значень заданоїфункції в залежності від значень вхідних даних згідно номера варіантавідповідного розділу „Методичних вказівок до виконання лабораторних робіт натему “Програмування мовою VBA” із дисципліни “Інформатика”.
4) Розробкаалгоритму та програми табуляції функції однієї змінної з використаннямітераційного циклу при розрахунку значень заданої функції згідно номераваріанта відповідного розділу „Методичних вказівок до виконання лабораторнихробіт на тему “Програмування мовою VBA” із дисципліни “Інформатика”.
Для викликурозроблених програм необхідно створити панель інструментів користувача,розташувавши на ній відповідні кнопки виклику програм лінійної, розгалуженої таітераційної циклічної структури.
За допомогоютекстового редактора MS Word створити звіт про виконану розрахунково-графічнуроботу, що повинен містити: титульну сторінку; бланк завдання; зміст; вступ,порядок вирішення кожної поставленої задачі, список використаних літературнихджерел. Текст звіту оформлюється шрифтом типу Times New Roman розміром 14кегель з полуторним інтервалом і повинен бути вирівняним по ширині з абзацнимвідступом 1,25 см. Всі сторінки повинні бути пронумеровані. Титульна сторінка ібланк завдання включаються до нумерації сторінок, але номери на них непроставляються. Звіт повинен бути оформлений у відповідності з вимогами
ДСТУ Б А.2. 4 – 4 – 95. Основні вимоги до робочої документації – К.– 1997., і роздрукований нааркушах формату А4. До звіту додається електронна копія звіту підготовленого втекстовому редакторі MS Word із створеними у звіті макросами, що містятьрозроблені програми.
При захистіроботи студент повинен відповісти на питання стосовно виконаної роботи та вмітистворювати власну панель інструментів із розташуванням на ній кнопок викликустворених макросів, створювати та редагувати макроси, користуватись операторамита функціями VBA, потрібними для виконання завдання.
При виконанніроботи необхідно використовувати „Методичні вказівки до виконання лабораторнихробіт на тему “Програмування мовою VBA” із дисципліни “Інформатика” (частина 1)для студентів денної форми навчання за напрямом “Будівництво” / Полтава:ПолтНТУ, 2006. — 19 с.

Зміст
Вступ
1. Інструментальнесередовище Visual Basic for Application
1.1 Створення панеліінструментів користувача
1.2 Створення макросів
1.3 Винесення кнопок макросівна власну панель користувача
1.4 Змінення малюнкапіктографічної кнопки
1.5 Редактор Visual Basic
2. Програмування алгоритмівциклічної структури
2.1 Постановка задачі
2.2 Блок-схема алгоритму
2.3 Таблиця ідентифікаторів
2.4 Текст програми
2.5 Результати роботипрограми
2.6 Відносна похибка міжрезультатами підрахунку
3. Програмування алгоритмівітераційної структури
3.1 Постановка задачі
3.2 Блок-схема алгоритму
3.3 Таблиця ідентифікаторів
3.4 Текст програми
3.5 Результати роботипрограми
3.6 Відносна похибка міжрезультатами підрахунку
Висновок
Список використанихлітературних джерел
/>/>Вступ
 
1. Етапирозв’язування задач на ЕОМ
Розв’язокбудь-яких задач за допомогою ЕОМ, як правило, відбувається в кілька етапів, основнимиз яких є наступні:
1)        постановказадачі містить у собі визначення складу, типів і кількості вхідних даних;складу та форми представлення результатів рішення; розробку математичної моделірозв’язку;
2)        розробленняалгоритму відбувається на основі обраної математичної моделі і відображаєпослідовно всі етапи цієї моделі.
Алгоритм – цечітка послідовність дій виконання, які призводять до розв’язку задач.
3)        програмування– це знання алгоритму спеціальною мовою, яка називається мовою програмування;
4)        налагодженняпрограми (тестування) – це процес виявлення і усунення помилок;
5)        експлуатаціяпрограми;
2.Властивості і типи алгоритмів
Алгоритм маєвідповідати певним вимогам, тобто мати властивості.
Масовість –це властивість одержувати при всіх наборах вхідних даних розв’язок задачі абопро його неможливість.
Результативність– це властивість при всіх значеннях вхідних даних за кінцеву кількість кроківрозв’язок задачі або про його неможливість.
Залежно відпослідовності дій розрізняють наступні типи алгоритмів:
Лінійнийалгоритм – це такий алгоритм в якому дії виконуються в порядку їх запису безпропусків від початку до кінця без розгалуження.
Розгалужений– це такий алгоритм в якому послідовність дій може змінюватися залежно відвиконання чи невиконання деякої умови розгалуження.
Циклічний –це такий алгоритм в якому деяка група дій виконується багаторазово (маєповторювані дії).
/>/>1.Інструментальне середовище Visual Basic for Application
 
Метароботи — вивчення інструментального середовища програмування Visual Basic forApplication, його системи меню, режимів роботи, текстового редактора програм,виконання програм, довідково-інформаційної системи.
Хідроботи
 
1.1 Створення панеліінструментів користувача
1)         Меню/Сервис/Настройка
2)         Меню/Вид/Панельинструментов/Настройка.
/>
Рис. 1.1.
Діалоговевікно «Настройка»/вкладка «Панели инструментов»
З’являєтьсядіалогове вікно «Настройка». На вкладці панелі інструментів натискаємо накнопці «Создать».
/>
Рис. 1.2.
Вікностворення панелі інструментів.

При цьомувиникає вікно панелі інструментів користувача. Замість «Настраємая1» вводимосвою назву, нижче обираємо назву власного документу. Натискаємо на створеномуоб’єкті Þ з’являється невеличка панель інструментів і після цьогозакриваємо вікно «Настройка». 1.2 Створення макросів
·         Виконуємокоманду: Меню/Сервис/Макрос/Макроси. З’являється вікно «Макроси».
·         Вцьому вікні в рядку «Макроси из» вибираємо свій файл, а в першому рядкузаписуємо назву макроса. Назва макроса складається лише з одного слова.Натискаємо на клавіші «ОК».
/>
Рис. 1.3.
Діалоговевікно «Макрос» 1.3 Винесення кнопок макросів на власну панелькористувача
Дістаємосядіалогового вікна «Настройка». Вибираємо вкладку «Команди». В лівій частинівибираємо пункт макроси, з правого боку буде перелік всіх макросів, які є ввашому документі. Ні в якому разі не вибирати Normal. Лівою клавішею мишіперетягуємо макрос на власну панель інструментів.

/>
Рис. 1.4..
Панельінструментів «Захарченко» із створеними піктографічними кнопками 1.4 Змінення малюнка піктографічної кнопки
/>
Рис. 1.5.
Діалоговевікно «Настройка»/ пункт «изменить выделенный объект»
Привідкритому діалоговому вікні «Команди» в контекстному меню виконуємо команду«Основной стиль».
Викликаємоконтекстне меню на клавіші і вибираємо «Изменить значок на кнопке». При цьомуз’являється діалогове вікно редактора кнопок який дозволяє виконати редагуванняабо створити власний малюнок.

/>
Рис. 1.6.
Вікноредактора піктографічної кнопки 1.5 Редактор Visual Basic
Для записумакросу використовується редактор Visual Basic, котрий містить рядок меню,панелі інструментів, три вікна (Project, Properties і вікно програмногокоду).Тексти програм записується у вікні програмного коду.
/>
Рис. 1.7.
Загальнийвигляд редактора VBA
Запускпрограми на виконання здійснюється:
1)         КлавішаF5;
2)         Меню/Run;
3)         Натисканняна піктограму />;
В Visual Basicfor Application є довідково-інформаційна система яка викликається:
1)         Help/Справка:Microsoft Visual Basic;
2)         КлавішаF1
Зберіганнядокумента:
1)         Піктографічнакнопка />;
2)         Меню/File/Save;
3)        Комбінаціяклавіш Ctrl+S;
Вихід ізсистеми програмування Visual Basic for Application
1)         Піктографічнакнопка />;
2)         Меню/File/Closeand Return to Microsoft Word;
3)         Комбінаціяклавіш Alt+Q;
Висновок: за допомогою даної роботия вивчив інструментальне середовище програмування Visual Basic for Application,його системи меню, режимів роботи, текстового редактора програм, виконанняпрограм, довідково-інформаційні системи.
/>/>2.Програмування алгоритмів циклічної структури
 
Метароботи — оволодіння практичними навичками розроблення та програмування обчислювальногопроцесу циклічної структури і навичками налагодження й тестування програм.
Хідроботи 2.1 Постановка задачі7
/>
1,5
/>
6
 2.2 Блок-схемаалгоритму
Наведено на рис. 2.1.
/>

2.3 Таблиця ідентифікаторів
 Змінна алгоритму n s x i Ідентифікатор n s x i Тип integer single single integer
 
2.4 Текст програми/>/> Sub circl_ind()/>/>’Автор-розробник Захарченко/>/>’виведення назви програми/>/>MsgBox («index»)/>/>’оголошення змінних/>/>Dim n, i As Integer/>/>Dim s, x As Single/>/>’введення данних/>/>n = InputBox(«Уведiтьn»)/>/>x = InputBox(«Уведiтьx»)/>/>s = 1 / x/>/>’обчислення функцій/>/>For i = 1 To n/>/>s = s + ((-1) ^ i) * (1 / ((2* i + 1) * (x ^ (2 * i + 1))))/>/>Next i/>/>’виведення результатів/>/>MsgBox («Значенняs=» + Str(s))/>/>End Sub 2.5 Результати роботи програми/>/> /> 
2.6 Відносна похибка міжрезультатами підрахунку
 
/> 
 
/>
 
/>
 
Висновок: за допомогою даноїроботі я оволодів практичними навичками розроблення та програмуванняобчислювального процесу циклічної структури і навичками налагодження йтестування програм.
/>/>3.Програмування алгоритмів ітераційної структури
 
Мета роботи — оволодіння практичниминавичками розроблення та програмування обчислювального процесу ітераційноїструктури, поліпшення навичок налагодження і тестування програм.
Хід роботи 3.1 Постановка задачі
Розробити алгоритм та програму знаходження значень функції7
/>
bx
bx=1
bx>1 b=1,5
/>
 3.2 Блок-схема алгоритму
Наведено нарис. 3.1.3.3 ТаблицяідентифікаторівЗмінна алгоритму b x Q
/>
/>
/> Ідентифікатор b x Q Xo Xn dx Тип single single single single single single

/>

3.4 Текст програми
Sub iterac()
‘Автор-розробникЗахарченко
‘виведенняназви програми
MsgBox(«iteraciyna»)
‘оголошеннязмінних
Dim Q, x, x0,dx, xn, b As Single
‘введенняданних
b =CSng(InputBox(«Уведiть b»))
x0 =CSng(InputBox(«Уведiть x0»))
xn =CSng(InputBox(«Уведiть xn»))
dx =CSng(InputBox(«Уведiть dx»))
x = x0
‘обчисленняфункцій
While x
If b * x
GoTo 1
Else
If b * x
Q = b * x — Log(b * x) / Log(10)
Else
If b * x = 1Then
Q = 1
Else
Q = b * x +Log(b * x) / Log(10)
End If
End If
End If
‘виведеннярезультатів
MsgBox(«Значення Q=» + Str(Q) + ” x=” + Str(x))
1
x = x + dx
Wend
End Sub 3.5 Результати роботи програми/>/> /> 3.6 Відносна похибка між результатамипідрахунку
/>
 
/>

Висновок: за допомогоюданої роботи я оволодів практичними навичками розроблення та програмуванняобчислювального процесу ітераційної структури, поліпшив навички налагодження ітестування програм.
Висновок
Під час виконання цієї роботи я:
·         познайомився з мовою програмування Visual Basic for Application;
·         вивчив інструментальнесередовище програмування Visual Basic for Application;
·         оволодів практичниминавичками розроблення та програмування обчислювального процесу циклічноїструктури;
·         оволодів практичниминавичками розроблення та програмування обчислювального процесу ітераційноїструктури;
поліпшила навички налагодження і тестування програм.
Список використаних літературних джерел
1. ДСТУ Б А. 2. 4 – 4 –95. Основні вимоги до робочої документації. – К. – 1997.
2. Бухвалов А.В. и др.Финансовые вычисления для профессионалов.- СПб.: БХВ-Петербург, 2001.-320с. ил.
3. Гарнаев А.Ю. Excel,VBA, Internet в экономике и финансах.- СПб.: БХВ-Петербург, 2001.- 816с.: ил.
4. Евдокимов В.В. и др.Экономическая информатика. Учебник для вузов. Под ред. Д.э.н., проф.В.В.Евдокимова. – СПб.: Питер, 1997. – 592с.
5. Згуровський М.З.,Коваленко І.І., Міхайленко В.М. Вступ до комп’ютерних інформаційних технологій:Навч.посіб. – К.: Вид-во Європ. ун-ту (фінанси, інформ. системи, менеджм. ібізнес), 2000.- 265 с.
6. Информатика. Базовыйкурс/ Симонович С.В. и др.- СПб.: Питер, 2000.- 640с.: ил.
7. Карлберг, Конрад.Бизнес-анализ с помощью Excel.: Пер с англ.- К.: Диалектика, 1997.- 448с.: ил.
8. Лук‘янова В.В.Комп‘ютерний аналіз даних: Посібник. – К.: Видавничий центр „Академія”, 2003. –344с. (Альма-матер)
9.Камминг, Стив. VBA для«чайников», 3-е издание.: Пер.с англ. – М.: Издательский дом«Вильямc», 2001.— 448c.
10.А. Васильев, А. Андреев.VBA в Office 2000. C.-Пб.: Питер, 2001. – 409c.
11.Демидова Л.А., ПылькинА.Н. Программирование в среде Visual Basic for Application. М.: Телеком 2004.
12.Гетц К., Джилберт М.Программирование в Microsoft Office. К.: Издательская группа BHV, 1999.