IE 212: Computational Methods for Industrial Engineering Lecture Notes #4 Appendix: VBA Functions

advertisement
IE 212: Computational Methods for
Industrial Engineering
Lecture Notes #4 Appendix:
VBA Functions
Dr. J. David Porter
Winter 2015
String Functions

There are several string functions available in VBA
– These functions are useful to inspect and manipulate strings
– Resulting strings can be used later to create other lists or to
concatenate them with other values (i.e., strings or numerical)

Two useful string functions are UCase and LCase, which
can be used to convert a string into all upper case or all
lower case, respectively
– UCase(string variable or string expression)
– LCase(string variable or string expression)
2
String Functions (cont.)

A very useful string function is Len
– This function determines the length of a string variable value or string
expression
 Len(string variable or string expression)
– String manipulation almost always start with determining the length of
the string

Other useful string manipulation functions include
− Left
− Right
− Mid
−Trim
− LTrim
− RTrim
−InStr
− InStrRev
3
Conversion Functions

There are several functions in VBA that can be used to
convert one data type to another

Two main conversion functions used with numerical values
are CInt and CDbl
– CInt converts a variable to an Integer data type
 CInt(variable or expression)
– CDbl converts a variable to a Double data type
 CDbl(variable or expression)

The Val function also extracts a numerical value from a
string
– The input for this function is an expression
 Val(expression)
4
Conversion Functions (cont.)

Any numeric expression can also be converted to a string
using the CStr function
– The input for this function is again any variable or expression
 CStr(variable or expression)

The CDate function converts values into the Date data type
– This data type is necessary to work with dates in your code for
comparisons or calculations
 CDate(variable or expression)
5
Conversion Functions (cont.)

Two other useful conversion functions are Asc and Chr

These functions, which use the ASCII list of numbers and
characters, can be used to convert letters to numbers and
numbers to letters, respectively
– Asc(character)
 Asc(“A”) = 65
– Chr(number)
 Chr(65) = “A”
6
VBA Math Functions

We can use typical math functions in VBA without needing to
create a formula in the spreadsheet
– Typical Math Functions
– Trigonometric Functions
– Derived Math Functions

We will describe six basic math functions
–
–
–
–
–
–
Abs
Sqr
Int
Rnd
Exp
Log
7
Abs and Sqr Functions

The Abs function calculates the absolute value of a variable
– This function can be used with both Integer and Double data types
(as well as with other numerical variables)
– It will return the same data type which is used in the function
 Abs(-10) = 10

The Sqr function calculates the square root of a number
– It can also be used with any numerical data type
 Must be greater than 0
– It will always return a Double data type
 Sqr(100) = 10
8
Int and Rnd Functions

The Int function removes the decimal part of a Double
variable and returns the integer part
– The result will be an Integer data type
– For positive numbers, the Int function always rounds down
– For negative numbers, the Int function will return the first negative
integer less than or equal to the original variable value
 Int(5.6) = 5
 Int(-4.3) = -5

The Rnd function will generate a random number
– You can either enter a seed as a parameter for the function, or leave
the seed value blank
– This function will return a Double data type between 0 and 1
– To create random integers in a specific range, use the formula
 Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
9
Exp and Log Function

The Exp function raises the constant e to some power given
in the function statement
– The value returned will be a Double data type
 Exp(2) = e2 = 7.389056099

The Log function calculates the natural log (i.e., the
logarithm with base e) of a given number
– The result is a Double data type
– You can calculate logarithms with base n for any number by dividing
the natural logarithm of that number by the natural logarithm of n
– For example, to calculate the log of 15 with base 10 (Log1015), you
would type
 Log(15) / Log(10) = 1.176091259
10
Trigonometric Functions

There are four basic trig functions that we will describe
– Sin
– Cos
– Tan

These functions all take angles (in radians) as a parameter
– To convert degrees to radians, multiply degrees by pi/180

The number p is unavailable in VBA
– However, we know that tan(p/4) = 1
– Therefore, VBA can calculate the value of p by using the formula
 pi = 4 * Atn(1)
 If high precision is not required, you can use Const pi = 3.14159
11
Sin, Cos, and Tan Functions

The Sin, Cos, and Tan functions take an angle (in radians)
and return the ratio of two sides of a right triangle

The value returned is a Double data type

The result of the Sin and Cos functions will be between -1
and 1
Sin(pi/4) = 0.7071067812
Cos(pi/3) = 0.5
Tan(pi/6) = 0.5773502692
12
Download