![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Оператори управління обчислювальним процесомСодержание книги Поиск на нашем сайте
При необхідності виконувати ті чи інші оператори в залежності від дотримання деяких умов, використовують оператори управління обчислювальним процесом. До них відносяться оператор безумовного переходу, оператори умовного переходу та оператор вибору. Оператори умовного переходу If...Then 1) Оператор If … Then - перевіряється одна умова і виконується один оператор чи блок операторів. Синтаксис: If <умова> Then <оператор> або з декількома операторами If <умова> Then <Блок операторів> End If 2) Оператор If … Then … Else - перевіряється одна умова і виконується один із двох блоків операторів. Синтаксис: If умова Then <Блок операторів 1> Else <Блок операторів 2> End If Приклад. Sub Вік () If vik <= 7 Then MsgBox "Дошкiльник" Else MsgBox "Школяр або дорослий" End If End Sub
3) Оператор If … Then … ElseIf - перевіряється кілька умов і виконується один з декількох блоків операторів. Синтаксис: If <умова1> Then <Блок операторів 1> ElseIf <умова2> Then <Блок операторів 2> ElseIf <умова3> Then <Блок операторів3> … Else <Блок операторів_n> End If Приклад. Sub Вік1 () vik= InputBox ("Вкажіть вік") If vik < 7 Then MsgBox "Дошкiльник" ElseIf vik < 17 Then MsgBox "Школяр" ElseIf vik < 23 Then MsgBox "Студент" ElseIf vik < 55 Then MsgBox "Спецiалiст" Else MsgBox "Пенсiонер" End If End Sub Оператор вибору Select Case 4) Оператор Select Case – оператор вибору, перевіряється одна умова і виконується один з декількох блоків операторів. Оператор заміняє серію операторів ElseIf, якщо один і той же вираз порівнюється з декількома значеннями Синтаксис: Select Case <вираз> Case <значення1> <Блок операторів 1> Case <значення2> <Блок операторів 2> … Case Else <Блок операторів N> End Select Приклад. Sub SelectCase () Dim a As Single a = InputBox("Введіть ваш зріст у сантиметрах") Select Case a Case Is < 150 MsgBox "У вас дуже малий зріст" Case 151 То 178 MsgBox "Ви людина середнього зросту" Case Is > 178 MsgBox "Ви висока людина" End Select End Sub Об’єкти VBА у середовищі MS Excel Мова VBA містить готові об’єкти, призначені для використання в різних додатках Microsoft Office. В середовищі Microsoft Excel такими об’єктами є: книга, лист, діапазон листа, діаграма. Рядок аркуша, стовпчик, окрема клітинка також є діапазоном. Книга визначається іменем файлу. Аркуші та діаграми книги визначаються або за номером у книзі, або за іменем аркуша(діаграми). Стовпчики та рядки визначаються номером. Діапазон на аркуші визначається або координатами двох кутів діапазону, або присвоєним іменем. Клітинка визначається назвою стовпчика і номером рядка.
В мові VBA можна використовувати змінні, значенням яких служить об'єкт: книга, лист або діапазон. Для того, щоб визначити таку змінну, використовують зарезервовані слова Workbook (книга), Worksheet (лист), Range (діапазон), Chart (діаграма). Є також функції, які можуть присвоїти значення конкретного об'єкта: Workbooks (“book1.xls) має значенням книгу у файлі з іменем “book1.xls”; Worksheets (“Лист1”) або Worksheets (1) має значенням перший лист активної книги; Range (“B3:G7”) має значенням діапазон активного листа з координатами B3 і G7; Workbooks (“book1.xls).Worksheets("Лист2").Range("М5:S2 0"). Для того, щоб у програмі змінну WH оголосити як аркуш книги, а змінну RR оголосити як діапазон, необхідно записати так: Dim WH as Worksheet, RR as Range ‘ Присвоєння змінній значення об'єктаув VBA має спеціальний вид з використанням слова Set: Set WH = Worksheets (“Лист2”) Set RR = WH.Range (“A1:H8”) Після цих команд змінна WH вказує на лист відкритої книги з іменем “Лист2”, а змінна RR відповідає діапазону A1:H8 цього листа. Тут запис WH.Range означає метод Range об'єкта WH, що повертає діапазон аркуша за його координатами. Нижче подано перелік деяких властивостей і методів, що можна застосувати до об'єктів: метод Activate для аркуша – робить активним даний аркуш; властивість Cells(j,k) для аркуша означає клітинку у j-му рядку і k-му стовпчику аркуша; властивість A ctiveCell для аркуша означає поточну клітинку аркуша; властивість Selection для аркуша означає сукупність всіх виділених діапазонів на аркуші; метод Select для діапазону робить виділеним даний діапазон; властивість Cells(j,k) для діапазону означає клітинку у j-му рядку і k-му стовпчику діапазону; властивість Offset(j,k) для діапазону означає клітинку із зміщенням на j рядків і k стовпчиків від верхнього кута діапазону; властивість Rows.Count повертає кількість рядків у діапазоні; властивість Columns.Count повертає кількість стовпчиків у діапазоні; властивість CurrentRegion для клітинки повертає максимальний діапазон, що містить дану клітинку і обмежений з усіх сторін пустими рядками і стовпчиками;
властивість Font діапазону або клітинки представляє собою опис шрифта для запису даних; властивість Value для клітинки задає значення, що зберігається або обчислюється в клітинці; метод Activate для клітинки робить цю клітинку поточною; властивість Areas(k) означає k-й по порядку діапазон серед кількох виділених діапазонів.
Теоретична довідка до ПР №28-29 Оператори циклів У мові програмування під циклом розуміють послідовність операторів, що повторюється багаторазово. Цикл, в якому відома кількість повторень, називається арифметичним. Цикл, у якому кількість повторень не відома і залежить від виконання деяких умов, називається ітераційним. Ітераційний цикл Оператор циклу без лічильника Do … Loop використовується в одному з чотирьох варіантів: Do While <умова продовження циклу> … Loop Do Until <умова закінчення циклу > … Loop Do … Loop While <умова продовження циклу> Do … Loop Until <умова закінчення циклу> Нехай, наприклад, треба розрахувати значення Y залежно від введеного значення X. Тоді фрагмент програми матиме такий вигляд: 1) У даному прикладі цикл виконується, якщо введені значення Х задовольняють умову Х>0: X = Input ("Значення X", Х) Do While Х> 0 Y=sqr(3*Х+7) Debug.Print X;Y Loop 2) У наведеному нижче прикладі цикл виконується, якщо X < 5: X = InputBox ("Значення X") Do Until X>5 Y=sqr(15-3*Х) Debug.Print X;Y Loop Арифметичний цикл Якщо необхідно виконати одні і ті ж дії задану кількість разів, але з різними значення деякої змінної, то використовують оператор циклу з лічильником For … Next. For <змінна циклу = початкове значення> То <кінцеве значення> [Step<крок циклу>] Тіло циклу Next [змінна циклу] Приклад: Private Sub Prog2() Dim add As String, n As Integer add = "" For n = 1 To 21 Step 2 add = add & n & " " Next n MsgBox "Це послідовність непарних чисел:" & " " & add End Sub
Приклади програм з використанням об’єктів MS Excel у циклічних обчислювальних процесах: 1. Програма переписує вміст стовпчика «B2:B7» на аркуші «Лист1» у стовпчик «E2:E7», виконуючи операції з клітинками аркуша: Sub example3 () Dim j as integer Worksheets("Лист1").Activate ‘ Аркуш «Лист1» стає поточним активним аркушем For j=2 To 7 Cells(j,5).Value = Cells(j,2).Value Next j End Sub 2. Програма для копіювання вмісту цілого діапазону. Початковий діапазон після копіювання буде стиратися. Sub example4 () Dim R1 as Range, R2 as Range, j as integer, k as integer, m as integer, n as integer Set R1 = Worksheets("Лист1").Range ("B2:C7") Set R2 = Worksheets("Лист1").Range ("E4:F9") m = R1.Rows.Count n = R1.Columns.Count For j=1 to m For k=1 to n R2(j,k).Value = R1(j,k).Value R1(j,k).Value = “ ” Next k Next j End Sub 3. Цей приклад демонструє функцію, що обчислює суму вмісту всіх клітинок заданого діапазону: Function summ (adr as string) as single Dim j as integer, k as integer, m as integer, n as integer Dim s as single Dim RN as Range Set RN = Range (adr) Rem Встановити діапазон із заданою в параметрі функції адресою m = RN.Rows.Count ‘Кількість рядків діапазону n = RN.Columns.Count ‘Кількість стовпців діапазону s = 0 For j = 1 to m For k = 1 to n s = s + RN(j, k).Value Next k Next j summ = s End Function 4. Наступний приклад демонструє функцію, що обчислює клітинку в заданому діапазоні, що містить мінімальне число в цьому діапазоні. Function minm (adr as string) as Range Dim j as integer, k as integer, m as integer, n as integer Dim s as single Dim RN as Range, RC as Range Set RN = Worksheets ("Лист1").Range (adr) m = RN.Rows.Count n = RN.Columns.Count Set RC = RN (1, 1) For j = 1 to m For k = 1 to n IF RN (j, k).Value < RC.Value Then Set RC = RN (j, k) End IF Next k Next j Set minm = RC End Function 5. В наступному прикладі мінімум в діапазоні запишеться, наприклад, в клітинку B13.
Sub example5 () Cells (13, 2) = minm ("B2:C11").Value End Sub
|
|||||||
Последнее изменение этой страницы: 2016-07-11; просмотров: 255; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.167.79 (0.01 с.) |