Для ввода/вывода данных или для высвечивания служебных сообщений используются встроенные функции InputBox и MsgBox.
Функции создают на экране диалоговое окно с сообщением и одной или несколькими кнопками. Программа приостанавливается до нажатия одной из кнопок.
Встроенная функция InputBox высвечивает диалоговое окно для ввода значения.
Оператор ActiveCell.FormulaR1C1 = "10000" в процедуре Макрос1 можно записать в виде ActiveCell.FormulaR1C1 = InputBox("Введи сумму вклада"). Тогда при выполнении процедуры возникнет диалоговое окно, в поле которого можно ввести число. После нажатия клавиши Enter введенное число попадает в
(рис 5.1) Диалоговое окно функции InputBoxВстроенная функция MsgBox используется для вывода сообщений.
В простейшей форме записи функции MsgBox после ключевого слова следует только текст сообщения. Текст сообщения является строкой символов. В качестве текста сообщения могут использоваться сцепленные строки символов (оператор сцепления ).
Пример
Процедура запрашивает ввод числа, выводит его квадрат.
(рис 5.2) Запрос на ввод числа функцией InputBoxВ процедуре ).
Функция MsgBox выводит содержимое
(рис 5.3) Вывод результата функцией MsgBox x
Операции - это действия, которые совершаются с одним, двумя и более операндами. Операнд - величина, которая участвует в операции. В зависимости от результата операции делятся на арифметические, логические, символьные операции и операции сравнения.
| Операция | Название операции | Примеры и значения результата | |
|---|---|---|---|
| Арифметические операции - операнды: числовые значения или значения, которые могут быть преобразованы в числовые | Выражение | Результат - число | |
| + | сложение | 10 + 3 | 13 |
| - | вычитание или отрицание | 10 - 3 | 7 |
| * | умножение | 10 * 3 | 30 |
| / | деление | 10 / 3 | 3,333333 |
| \ | деление нацело | 10 \ 3 | 3 |
| Mod | получение остатка от деления | 10 mod 3 | 1 |
| ^ | возведение в степень | 10 ^ 3 | 1000 |
| Операции сравнения - операнды: числовые, символьные, логические значения | Результат True | Результат False | |
| = | равенство операндов | 5=10/2 | 5=10 |
| < | первый операнд меньше второго | 5<10 | 10<5 |
| > | первый операнд больше второго | 10>5 | 5>10 |
| <= | первый операнд меньше или равен второму | 5<=10 | 10<=5 |
| >= | первый операнд больше или равен второму | 10>=5 | 5>=10 |
| <> | первый операнд не равен второму | 5<>10 | 5<>5 |
| Is | сравнение типов объектов (идентичность) | IsNumeric(5) | IsNumeric("A") |
| указание условия на значение в операторе множественного выбора Select Case | Is >0 | ||
| Like | сравнение строковых значений с образцом | "aBBBa" Like "a*a" | "aBBBa" Like "aa" |
| Логические операции - операнды: числовые, логические значения | Результат True | Результат False | |
| And | логическое "И" ( |
(25>10) And (85>25) | (25>10) And (85<25) |
| Or | логическое "ИЛИ" ( |
(25>10) Or (85<25) | (25<10) Or (85<25) |
| Not | отрицание | Not (25<10) | Not (25>10) |
| Xor | исключающее "ИЛИ" | (25>10) Xor (85<25) | (25>10) Xor (85>25) |
| Imp | (25<10) Imp (85>25) | (25>10) Imp (85<25) | |
| Eqv | эквивалентность (равенство) | (25>10) Eqv (85>25) | (25>10) Eqv (85<25) |
| Символьные операции - операнды: числовые, символьные, логические значения | |||
+ |
конкатенация (сцепление) | Если A="X+2XY" и B="+Z", то результаты A B и A + B совпадают и равны X+2XY+Z | |
Каждая операция имеет приоритет. Вычисления производятся слева направо в порядке
В следующей
| Арифметические операции | Операции сравнения | Логические операции |
|---|---|---|
| Возведение в степень ( ^ ) | = | Not |
| Отрицание( - ) | <> | And |
| Умножение ( * ) или деление ( / ) | < | Or |
| Деление нацело ( \ ) | > | Xor |
| Остаток от деления ( Mod ) | <= | Eqv |
| Сложение ( + ) или вычитание ( - ) | >= | Imp |
| Конкатенация ( ) | Like |
Процесс A = B + C * D - 34.5 / ln(B).
Оператор присваивания вычисляет
Следует отличать оператор присваивания от операции сравнения двух операндов. В первом случае производится изменение значения переменной, указанной слева, а во втором - значения операндов сравниваются.
Оператор присваивания применяется для вычислений с любыми типами данных. В операторе присваивания могут использоваться свойства объектов, например, в результате выполнения оператора ActiveCell.Value=222 в
В выражении справа можно смешивать различные типы данных. Необязательно
R=13.5.
Другая форма записи Let R=13.5. Обычно ключевое слово Let опускается.
При выполнении арифметических операций можно смешивать различные типы данных. При этом автоматически производится преобразование целых чисел в более общий формат действительных чисел. Переменные всех числовых типов могут присваиваться друг другу. При присвоении целой переменной значения переменной с фиксированной или плавающей точкой оно округляется до целого.
Если заранее известно, что переменная будет принимать только целые значения, ей следует назначать тип Integer или Long. Если будут использоваться дробные числа, то переменная может иметь тип Currency, Single или Double.
? 10 \ 3 возвращает три.При делении нацело оба числа преобразуются в целые путем округления, затем выполняется операция деления и у результата операции отбрасывается дробная часть.
Операция получения остатка от деления Mod дополняет операцию деления нацело возвращением остатка. Оператор ? 10 возвращает значение 1.
Оператор ?1+100 возвращает значение 3, что соответствует среде.
Дату как константу задают, используя знак :).
(рис 5.4) Пример расчета даты, отстоящей от заданной на 100 днейУстановка даты в виде a=#14 January 2009# или a = #14/1/2009# автоматически преобразует дату в #1/14/2009#.Операции сравнения являются
Пример
Процедура сравнивает значения двух переменных, которым присвоены значения ).
Результат сравнения False. При сравнении логических значений считается, что значению True соответствует - 1 а значению False соответствует 0.
(рис 5.5) Пример сравнения двух переменных, которым присвоены значения True и FalseОтношения между символьными данными основываются на порядке сортировки символов и знаков, задаваемым инструкцией Option Compare, которая размещается в области Declarations модульного листа. Символы сравниваются попарно слева направо. Могут быть использованы любые знаки операций сравнения.
Инструкция Option Compare Binary задает способ сравнения строковых значений, основанный на внутреннем
A < B < E < Z < a < b < e < z < Б < К < Ш < б < к < ш
Оператор Option Compare Text позволяет задать способ сравнения строковых значений, не принимая в рассмотрение регистр. Например,
(A=a) < (B=b) < (E=e) < (Z=z)< (Б=б) < (К=к) < (Ш=ш)
Для
Синтаксис оператора: string Like
Оба операнда string (строка) и pattern (образец) являются строковыми переменными. Если значение переменной string соответствует значению переменной pattern, результат сравнения True ; при их несоответствии результат сравнения False. Если любой из операндов имеет значение Null, результат также равен Null. Подробно см. Help.
| Оператор | Результат | Комментарии |
|---|---|---|
"aBBBa" Like "a*a" |
True | Любое количество символов между двумя буквами a |
"F" Like "[A-Z]" |
True | Одна любая прописная латинская буква |
"F" Like "[!A-Z]" |
False | Один символ, кроме прописных латинских букв |
"a2a" Like "a#a" |
True | Одна цифра между двумя буквами a |
"aM5b" Like "a[L-P]#[!c-e]" |
True | После буквы a следует заглавная латинская буква от L до P, затем цифра и любая строчная латинская буква, исключая буквы в интервале от c до e |
"BAT123khg" Like "B?T*" |
True | После буквы B следует любой символ, после которого буква T и далее любое количество любых символов |
"CAT123khg" Like "B?T*" |
False |
Операнд pattern должен удовлетворять следующим соглашениям:
Логические операции, объединяя два условия в одно, позволяют сформулировать сложное условие (комплексный критерий), результатом проверки которого также является логическое значение True или False. Операндами логических операций могут являться
| 1 операнд | 2 операнд | Not | And | Or | Eqv | ||
|---|---|---|---|---|---|---|---|
| True | True | False | True | True | False | True | True |
| True | False | False | False | True | True | False | False |
| True | Null | False | Null | True | Null | Null | Null |
| False | True | True | False | True | True | True | False |
| False | False | True | False | False | False | True | True |
| False | Null | True | False | Null | Null | True | Null |
| Null | True | Null | Null | True | Null | True | Null |
| Null | False | Null | False | Null | Null | Null | Null |
| Null | Null | Null | Null | Null | Null | Null | Null |
Например, запись A>=25 And A<=85 означает проверку, принадлежит значение переменной A отрезку [25;85].
Значение Null в приведенной таблице истинности указывает на отсутствие значения у операнда или у результата.
Смысл единственной символьной операции (операции конкатенации или сцепления) состоит в том, что порождается новая
Пример
В процедуре производится распечатка вновь создаваемой строки c текстом "Visual Basic for Application".
Можно использовать встроенные константы vbCrLf, vbCr, vbLf для разбиения текста на строки. Для этого запишите последний оператор процедуры в виде:
Debug.Print a vbCrLf b vbCrLf c vbCrLf d
(рис 5.6) Пример распечатки вновь создаваемой строки c текстом "Visual Basic for Application"
Для ввода/вывода данных или для высвечивания служебных сообщений используются встроенные функции InputBox и MsgBox.
Функции создают на экране диалоговое окно с сообщением и одной или несколькими кнопками. Программа приостанавливается до нажатия одной из кнопок.
Встроенная функция InputBox высвечивает диалоговое окно для ввода значения.
Оператор ActiveCell.FormulaR1C1 = "10000" в процедуре Макрос1 можно записать в виде ActiveCell.FormulaR1C1 = InputBox("Введи сумму вклада"). Тогда при выполнении процедуры возникнет диалоговое окно, в поле которого можно ввести число. После нажатия клавиши Enter введенное число попадает в
(рис 5.1) Диалоговое окно функции InputBoxВстроенная функция MsgBox используется для вывода сообщений.
В простейшей форме записи функции MsgBox после ключевого слова следует только текст сообщения. Текст сообщения является строкой символов. В качестве текста сообщения могут использоваться сцепленные строки символов (оператор сцепления ).
Пример
Процедура запрашивает ввод числа, выводит его квадрат.
(рис 5.2) Запрос на ввод числа функцией InputBoxВ процедуре ).
Функция MsgBox выводит содержимое
(рис 5.3) Вывод результата функцией MsgBox x
Операции - это действия, которые совершаются с одним, двумя и более операндами. Операнд - величина, которая участвует в операции. В зависимости от результата операции делятся на арифметические, логические, символьные операции и операции сравнения.
| Операция | Название операции | Примеры и значения результата | |
|---|---|---|---|
| Арифметические операции - операнды: числовые значения или значения, которые могут быть преобразованы в числовые | Выражение | Результат - число | |
| + | сложение | 10 + 3 | 13 |
| - | вычитание или отрицание | 10 - 3 | 7 |
| * | умножение | 10 * 3 | 30 |
| / | деление | 10 / 3 | 3,333333 |
| \ | деление нацело | 10 \ 3 | 3 |
| Mod | получение остатка от деления | 10 mod 3 | 1 |
| ^ | возведение в степень | 10 ^ 3 | 1000 |
| Операции сравнения - операнды: числовые, символьные, логические значения | Результат True | Результат False | |
| = | равенство операндов | 5=10/2 | 5=10 |
| < | первый операнд меньше второго | 5<10 | 10<5 |
| > | первый операнд больше второго | 10>5 | 5>10 |
| <= | первый операнд меньше или равен второму | 5<=10 | 10<=5 |
| >= | первый операнд больше или равен второму | 10>=5 | 5>=10 |
| <> | первый операнд не равен второму | 5<>10 | 5<>5 |
| Is | сравнение типов объектов (идентичность) | IsNumeric(5) | IsNumeric("A") |
| указание условия на значение в операторе множественного выбора Select Case | Is >0 | ||
| Like | сравнение строковых значений с образцом | "aBBBa" Like "a*a" | "aBBBa" Like "aa" |
| Логические операции - операнды: числовые, логические значения | Результат True | Результат False | |
| And | логическое "И" ( |
(25>10) And (85>25) | (25>10) And (85<25) |
| Or | логическое "ИЛИ" ( |
(25>10) Or (85<25) | (25<10) Or (85<25) |
| Not | отрицание | Not (25<10) | Not (25>10) |
| Xor | исключающее "ИЛИ" | (25>10) Xor (85<25) | (25>10) Xor (85>25) |
| Imp | (25<10) Imp (85>25) | (25>10) Imp (85<25) | |
| Eqv | эквивалентность (равенство) | (25>10) Eqv (85>25) | (25>10) Eqv (85<25) |
| Символьные операции - операнды: числовые, символьные, логические значения | |||
+ |
конкатенация (сцепление) | Если A="X+2XY" и B="+Z", то результаты A B и A + B совпадают и равны X+2XY+Z | |
Каждая операция имеет приоритет. Вычисления производятся слева направо в порядке
В следующей
| Арифметические операции | Операции сравнения | Логические операции |
|---|---|---|
| Возведение в степень ( ^ ) | = | Not |
| Отрицание( - ) | <> | And |
| Умножение ( * ) или деление ( / ) | < | Or |
| Деление нацело ( \ ) | > | Xor |
| Остаток от деления ( Mod ) | <= | Eqv |
| Сложение ( + ) или вычитание ( - ) | >= | Imp |
| Конкатенация ( ) | Like |
Процесс A = B + C * D - 34.5 / ln(B).
Оператор присваивания вычисляет
Следует отличать оператор присваивания от операции сравнения двух операндов. В первом случае производится изменение значения переменной, указанной слева, а во втором - значения операндов сравниваются.
Оператор присваивания применяется для вычислений с любыми типами данных. В операторе присваивания могут использоваться свойства объектов, например, в результате выполнения оператора ActiveCell.Value=222 в
В выражении справа можно смешивать различные типы данных. Необязательно
R=13.5.
Другая форма записи Let R=13.5. Обычно ключевое слово Let опускается.
При выполнении арифметических операций можно смешивать различные типы данных. При этом автоматически производится преобразование целых чисел в более общий формат действительных чисел. Переменные всех числовых типов могут присваиваться друг другу. При присвоении целой переменной значения переменной с фиксированной или плавающей точкой оно округляется до целого.
Если заранее известно, что переменная будет принимать только целые значения, ей следует назначать тип Integer или Long. Если будут использоваться дробные числа, то переменная может иметь тип Currency, Single или Double.
? 10 \ 3 возвращает три.При делении нацело оба числа преобразуются в целые путем округления, затем выполняется операция деления и у результата операции отбрасывается дробная часть.
Операция получения остатка от деления Mod дополняет операцию деления нацело возвращением остатка. Оператор ? 10 возвращает значение 1.
Оператор ?1+100 возвращает значение 3, что соответствует среде.
Дату как константу задают, используя знак :).
(рис 5.4) Пример расчета даты, отстоящей от заданной на 100 днейУстановка даты в виде a=#14 January 2009# или a = #14/1/2009# автоматически преобразует дату в #1/14/2009#.Операции сравнения являются
Пример
Процедура сравнивает значения двух переменных, которым присвоены значения ).
Результат сравнения False. При сравнении логических значений считается, что значению True соответствует - 1 а значению False соответствует 0.
(рис 5.5) Пример сравнения двух переменных, которым присвоены значения True и FalseОтношения между символьными данными основываются на порядке сортировки символов и знаков, задаваемым инструкцией Option Compare, которая размещается в области Declarations модульного листа. Символы сравниваются попарно слева направо. Могут быть использованы любые знаки операций сравнения.
Инструкция Option Compare Binary задает способ сравнения строковых значений, основанный на внутреннем
A < B < E < Z < a < b < e < z < Б < К < Ш < б < к < ш
Оператор Option Compare Text позволяет задать способ сравнения строковых значений, не принимая в рассмотрение регистр. Например,
(A=a) < (B=b) < (E=e) < (Z=z)< (Б=б) < (К=к) < (Ш=ш)
Для
Синтаксис оператора: string Like
Оба операнда string (строка) и pattern (образец) являются строковыми переменными. Если значение переменной string соответствует значению переменной pattern, результат сравнения True ; при их несоответствии результат сравнения False. Если любой из операндов имеет значение Null, результат также равен Null. Подробно см. Help.
| Оператор | Результат | Комментарии |
|---|---|---|
"aBBBa" Like "a*a" |
True | Любое количество символов между двумя буквами a |
"F" Like "[A-Z]" |
True | Одна любая прописная латинская буква |
"F" Like "[!A-Z]" |
False | Один символ, кроме прописных латинских букв |
"a2a" Like "a#a" |
True | Одна цифра между двумя буквами a |
"aM5b" Like "a[L-P]#[!c-e]" |
True | После буквы a следует заглавная латинская буква от L до P, затем цифра и любая строчная латинская буква, исключая буквы в интервале от c до e |
"BAT123khg" Like "B?T*" |
True | После буквы B следует любой символ, после которого буква T и далее любое количество любых символов |
"CAT123khg" Like "B?T*" |
False |
Операнд pattern должен удовлетворять следующим соглашениям:
Логические операции, объединяя два условия в одно, позволяют сформулировать сложное условие (комплексный критерий), результатом проверки которого также является логическое значение True или False. Операндами логических операций могут являться
| 1 операнд | 2 операнд | Not | And | Or | Eqv | ||
|---|---|---|---|---|---|---|---|
| True | True | False | True | True | False | True | True |
| True | False | False | False | True | True | False | False |
| True | Null | False | Null | True | Null | Null | Null |
| False | True | True | False | True | True | True | False |
| False | False | True | False | False | False | True | True |
| False | Null | True | False | Null | Null | True | Null |
| Null | True | Null | Null | True | Null | True | Null |
| Null | False | Null | False | Null | Null | Null | Null |
| Null | Null | Null | Null | Null | Null | Null | Null |
Например, запись A>=25 And A<=85 означает проверку, принадлежит значение переменной A отрезку [25;85].
Значение Null в приведенной таблице истинности указывает на отсутствие значения у операнда или у результата.
Смысл единственной символьной операции (операции конкатенации или сцепления) состоит в том, что порождается новая
Пример
В процедуре производится распечатка вновь создаваемой строки c текстом "Visual Basic for Application".
Можно использовать встроенные константы vbCrLf, vbCr, vbLf для разбиения текста на строки. Для этого запишите последний оператор процедуры в виде:
Debug.Print a vbCrLf b vbCrLf c vbCrLf d
(рис 5.6) Пример распечатки вновь создаваемой строки c текстом "Visual Basic for Application"
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.