русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Редагування створеного макроса


Дата добавления: 2015-07-23; просмотров: 775; Нарушение авторских прав


Для зміни записаного макроса необхідні базові знання роботи з мовою програмування VBA. Ця мова орієнтована на роботу з об'єктами (Objects), якими можуть бути робочі книги (Work­books), аркуші (Sheets), діапазони комірок (Range), комірки (Cells) тощо. Об'єкти можуть бути описані за допомогою методів (Methods) та властивостей (Properties). Метод — це дія, яку може виконати об'єкт, або яка може бути застосована до об'єкта. Влас­тивість — це характеристика об'єкта, яка може бути йому надана.

Проектом називають сукупність об'єктів і модулів, де записа­ні макроси для об'єктів.

Викликається пункт меню Сервис/Макрос/Макрос,ви­бирається ім'я потрібного макроса і натискається кнопка Изменить. Відкриється вікно редактора мови VBA, у якому можна побачити вікно проекту, вікно властивостей об'єкта та вікно мо­дуля зі змістом інструкцій макроса.

Сукупність інструкцій макроса розміщується у процедурі, яка завжди починається службовим словом Sub ім'я макроса(), міс­тить інструкції, які створювалися під час запису макроса, і закін­чується службовим словом End Sub.

Наприклад:

* інструкція ActiveSheet.Range("Bl:C5").Clearозначає: у актив­ному робочому аркуші у діапазоні комірок В1 :С5 видалити зміст (очистити комірки).

ActiveSheet.Range("В1:C5")— це складний об'єкт, Clear— це метод.

 

* інструкція ThisWorkbook.Sheets("JlИCT20").Activateозна­чає: у поточній робочій книзі активізувати робочий аркуш із на­звою Лист20.

ThisWorkbook.Sheets("Лист20")це складний об'єкт, Activate— це метод.

 

* інструкція Cells(l, 2).Font.Bold = Trueозначає: шрифт у комірці, що знаходиться у першому рядку та другому стовпчику таблиці (тобто В1), має бути жирним.

Cells(l, 2).Font- це об'єкт, Bold— властивість об'єкта, = True— значення властивості об'єкта.



 

* інструкція Cells(l, 2).Value= 18означає: у комірку В1 запи­сати значення 18.

Cells(l,2) — об'єкт, Value— властивість об'єкта, = 18 — значення властивості.

Можна змінити значення властивості, дописати нові інструкції по роботі з об'єктами, видалити зайві інструкції тощо. Для пове­рнення у середовище Microsoft Excel викликається пункт меню редактора Visual Basic — Файл/Закрытьі повернутися в Micro­soft Excel або просто натиснути на клавіші Alt+Q.

У середовищі редактора Visual Basic можна створювати, реда­гувати та виконувати макроси самостійно. Для цього викликаєть­ся пункт меню Сервис/Макрос/Редактор Visual Basic.Відкриє­ться вікно редактора, треба вибрати модуль у вікні проектів, або відкрити новий модуль (пункт Вставка/Модуль).

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

Наприклад:

Створити процедуру, яка у активній робочій книзі відкриває аркуш Лист 20, очищає зміст комірок В1:С5, у комірку В1 зано­сить число 18, вибирає шрифт у комірці TimesNew Roman, ро­бить його жирним із розміром шрифта 16:

Sub Му()

ThisWorkbook.Sheets(«Лист20»).Activate

ActiveSheet.Range(«B1 :C5»).Clear

Cells(l, 2).Value=18

Cells(l, 2).Font.Name = «TimesNew Roman»

Cells(l, 2).Font.Bold = True

Cells(l, 2).Font.Size=16

End Sub

Виконати процедуру можна, якщо натиснути на клавішу F5 або вибрати пункт меню Запуск/Запуск підпрограми.

Текст модуля можна роздрукувати на принтері: вибирається пункт меню Файл/Печать,вибрати параметри для друку і натис­нути на Ok.

Автоматизація виконання макросів

Для швидкого виконання макроса на робочому аркуші можна створити кнопку-графічний об'єкт і призначити цій кнопці ство­рений раніше макрос. Натискаючи мишкою кнопку, макрос мож­на виконати.

Для створення кнопки викликається панель інструментів Рисование,вибирається замкнутий графічний об'єкт (прямокутник, овал тощо) і розташовується на зручному місці робочого аркуша. Кнопка супроводжується текстом — назвою дії, що виконує макрос. Потім натискається права кнопка мишки на межі графічного об'єкта і ви­бирається пункт контекстового меню Назначити макрос,із списку створених макросів вибирається потрібний і натискається Ok.

 

Також можна створювати в меню новий пункт, за допомогою якого буде виконуватися вибраний макрос. Для цього вибирається пункт головного меню Вид/Панели инструментов/Настройка ...

У вкладці Команди з зони Категории вибирається пункт Макроси.

З зони Команди повідомлення Настраиваемая команда меню переміщується мишкою у потрібний пункт меню:

 

 

Для створення нової назви для пункту меню натискається кнопка Изменить выделенный обьект, записується нова назва і призначається макрос.

Наприклад:

У пункті головного меню Формат/Листстворити пункт Очи­стить,який знищуватиме всю інформацію у активному робочому аркуші.

Використовується макрос з назвою ClealAll:

Sub ClealAll()

ActiveSheet.Cells.Clear

End Sub

Пункт меню створюється, як показано вище.

Загальний вигляд меню після створення нового пункту:

 

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

Поряд із стандартними функціями, які виконують дії з даними (МИН, СРЗНАЧ, СУММ, ЕСЛИ тощо), користувач може створи­ти свою власну функцію, яка буде виконувати дії над даними, які потрібні користувачеві.

За виглядом функція користувача не відрізняється від стан­дартних:

= ім'я функції_користувача (аргументи)

і вводиться у комірку, де треба виконати потрібну процедуру над даними -аргументами.

Але для того, щоб подані аргументи оброблялись належним чином, мовою VBA створюється процедура — функція.

Процедура Function є послідовністю інструкцій мови Visual Basic, обмежених інструкціями Function і End Function. Процеду­ра Function схожа на процедуру Sub, однак на відміну від остан­ньої вона повертає обчислене значення у робочій аркуш, звідки вона була викликана у супроводі формальних аргументів. Отри­мані аргументи (константи, змінні, або вирази) процедура Func­tion підставляє в тому ж порядку замість власних умовних аргу­ментів, які містяться у дужках після імені функції.

У поданій нижче таблиці клієнтів є формули, за якими визна­чаються вихідні результати — Податок і Сума замовлення.

10% від загальної вартості, якщо вона > 50000

Податок = 12% від загальної вартості, якщо вона > 25000

15% від загальної вартості, якщо вона > 10000

18% від загальної вартості, якщо вона < 10000

Сума замовлення = Податок + Загальна вартість


Необхідно створити:

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

 

Перша функція реалізовується за допомогою алгоритму з роз­галуженням.

1.Перевіряється поточне значення загальної вартості (Cost) і якщо це значення перевищує 50000, тоді податок (Tax) вирахову­ється як 10 % від загальної вартості.

2. Якщо загальна вартість дорівнює або менша за 50000, але перевищує 25000, тоді податок вираховується як 12 % від загальної вартості.

3. Якщо ж загальна вартість дорівнює або менша за 25000, але перевищує 10000, тоді податок вираховується як 15 % від загаль­ної вартості.

4. Якщо ж жодна з перерахованих вище умов не виконується, то загальна вартість менша або дорівнює 10000, і податок у цьо­му випадку нараховується як 18 % від загальної вартості.

Друга функція реалізується за допомогою лінійного алгоритму.

Нижче подані алгоритми для реалізації вказаних функцій.

Блок-схема алгоритму для визначення податку:


Блок-схема алгоритму для визначення суми замовлення (TotalCost)яка залежить від податку (CountTax) і загальної вар­тості (Cost):

Викликається редактор VBA, активізується модуль з уже створеними макросами або створюється новий модуль, де записуються інструкції для виконання функції визначення податку:

FunctionTax(Cost)

If Cost > 50000 Then

Tax = 0.1 *Cost

ElseIf Cost > 25000 Then

Tax = 0.12* Cost

ElseIf Cost > 10000 Then

Tax = 0.15 *Cost

Else

Tax = 0.18* Cost

End If



<== предыдущая лекция | следующая лекция ==>
Створення макросів за допомогою програми MacroRecorder | End Function


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.722 сек.