Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Встроенные функции VBA

Логические выражения состоят из операндов и операций отношения и логических операций.

Результатом вычисления логического выражения может быть одно из двух логических значений: True (истина) или False (ложь).

 

Г) Текстовые операции

Сложение строк. Для сложения строк допустимо использование операции +, но предпочтительнее, во избежание путаницы, применять операцию со знаком &

 

Д) Приоритеты операций

VBA выполняет операции в соответствии с их приоритетами, что обеспечивает однозначность в трактовании значений выражений

Ø Операции в скобках

Ø Вычисление функций

Ø Возведение в степень

Ø Смена знака

Ø *, /, \, mod

Ø +, -

Ø >,>=, <, <=, <>, =

Ø Not

Ø And

Ø Or

 

В VBA имеется большой набор встроенных функций и процедур, использование которых существенно упрощает программирование. Эти функции можно разделить на следующие основные категории:

  • Математические функции
  • Функции проверки типов
  • Функции преобразования форматов
  • Функции обработки строк
  • Функции времени и даты

Ниже рассмотрены основные функции из этих категорий.

Математические функции

В VBA имеется большой список математических функций, позволяющих произвести любые вычисления.

         
  Функция Возвращаемое значение    
  Abs (число) Atn (число) Cos (число) Модуль (абсолютная величина)числа Арктангенс Косинус    
         
       
  Ехр (число) Экспонента, т. е. результат возведения основания натурального логарифма в указанную степень  
  Log (число) Натуральный логарифм  
  Rnd Rnd (число) Возвращает случайное число из интервала [0,1]   Если число меньше нуля, то Rnd возвращает каждый раз одно и то же число, используя аргумент в качестве опорного числа; если число больше нуля или аргумент опущен, то — следующее случайное число в последовательности; если число равняется нулю, то — случайное число, возвращенное при предыдущем вызове этой функции. Public Sub Процедура_RND() x = Rnd(-2) MsgBox "x=" & x End Sub Перед вызовом функции Rnd используйте инструкцию Randomize без аргумента Public Sub Процедура_RND() Randomize x = Rnd(-2) MsgBox "x=" & x End Sub  
  Sgn (число) Знак числа Public Sub Процедура_RND() Randomize x = Rnd(-2) MsgBox "x=" & x z = -5 y = Sgn(z) MsgBox "y=" & y End Sub  
  Sin (число) Синус  
  Sqr (число) Квадратный корень из числа  
  Tan (число) Тангенс  
  Fix (число) и Int (число) Обе функции, int и Fix, отбрасывают дробную часть числа и возвращают целое значение. Различие между функциями int и Fix состоит в том, что для отрицательного значения аргумента число функция int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, a Fix — ближайшее отрицательное целое число, большее либо равное указанному Например: Int(2.3)=2 fix(2.3)=2 Int(2.8)=2 fix(2.8)=2 Int(-2.3)=-3 fix(-2.3)=-2 Int(-2.3)=-3 fix(2.3)=-2    
  Round(E[,N]) Округляет число, округленное до определенного количества (N) десятичных знаков Public Sub as1() Dim d As Double d = 2.567 MsgBox Round(d, 1) 'выведет 2.6 End Sub  
       
             

 

Примеры создания последовательности случайных чисел

1.

Public Sub случайное_число()

Randomize

For i = 1 To 3

s = Rnd

MsgBox "Случайное число=" & s

Next i

End Sub

 

Public Sub qqq()

Dim mv, ms As String

Randomize

ms = " "

For i = 0 To 9

mv = Int((6 * Rnd) + 1)

ms = ms & " " & mv

Next

MsgBox ms

End Sub

Преобразование строки в число и обратно осуществляют следующими функциями.

       
  Val (строка) Возвращает числа, содержащиеся в строке, как числовое значение соответствующего типа  
  Str (число) Возвращает значение типа variant (String), являющееся строковым представлением числа  
       

В качестве допустимого десятичного разделителя функция str воспринимает только точку. При наличии другого десятичного разделителя (например, запятой) для преобразования чисел в строки следует использовать функцию cstr, описанную ниже.

Функции преобразования типов

В VBA имеются следующие функции преобразования типов выражений из данного в указанный.

       
  Функция Тип, в который преобразуется выражение  
  CBool (Выражение) Boolean  
  CByte (Выражение) Byte  
  CCur (Выражение) Currency  
  CDate (Выражение) Date  
  СDbl (Выражение) Double  
  CDec (Выражение) Decimel  
  CInt (Выражение) Integer  
  CLng (Выражение) Long  
  CSng (Выражение) Single  
  CVar (Выражение) Variant  
  CStr (Выражение) String Public Sub Процедура_RND() Randomize x = Rnd(-2) MsgBox "x=" & x z = -5 y = Sgn(z) MsgBox "y=" & y c = Val(x) MsgBox "c=" & c b = Str(x) MsgBox "b=" & b v = CStr(x) MsgBox "v=" & v End Sub  
       

Функции обработки строк

В VBA имеются следующие функции обработки строковых выражений.

       
  Функция Возвращаемое выражение  
  Asc (строка) Возвращает код символа, соответствующий первой букве строки Public Sub zx() Dim ms As String d = Asc("Привет") MsgBox "d=" & d End Sub d=207  
  Chr (число) Возвращает строку из одного символа, соответствующего коду числа, т.е возвращает символ, которому соответствует число d = Chr(207) MsgBox "d=" & d d= П  
  Mid(S,N1[,N2]) Возвращает строку, содержащую N2 (если указано, если не указано - то до конца строки) символов, начиная с позиции N1. Первое_слово=mid(“Mid Function Examle”,1,3) ‘Первое_слово=“Mid”  
  Len(S) Возвращает число символов строки S(включая начальные и конечные пробелы).  
  Left(S,N) Возвращает подстроку, состоящую из заданного N числа символов, начиная с левого края строки S. S=”Мама мыла раму” S1=Left(S,4) ‘S1=Мама  
  Right(S,N) Возвращает подстроку, состоящую из заданного N числа символов, начиная с правого края строки S. S=”Мама мыла раму” S1= Right (S,4) ‘S1= раму  
  InStr([N,]S1,S2) Возвращает позицию положения строки S2 в строке S1. При наличии N поиск начинается с позиции N. s1=”Abcdef” i= InStr(s1,”cd”) ‘i=3 s1=”Abcdcdef” i= InStr(4,s1,”cd”) ‘i=5 s1=”Abcdef” i= InStr(s1,”k”) ‘i=0 Если S2 в S1 не обнаружено, то результат = нулю  
       

 

 

<== предыдущая лекция | следующая лекция ==>
Арифметические выражения состоят из операндов и математических операций | Оператор присваивания
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 766; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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