display pdf in wpf c# : How to rotate a single page in a pdf document application SDK tool html .net wpf online 68842-part560

Chapter 14
VBA Programming
Concepts
IN THIS CHAPTER
 Introducing an example 
Sub
procedure
 Using comments in your code
 Understanding VBA’s language elements, including variables, data types,
and constants
 Using assignment expressions in your code
 Declaring arrays and multidimensional arrays
 Using VBA’s built-in functions
 Using ranges in your code
T
HIS CHAPTER DISCUSSES SOME OF
the key language elements and programming
concepts in VBA. If you’ve used other programming languages, then much of this
information may sound familiar. VBA has a few unique wrinkles, however, so even
experienced programmers may find some new information.
VBA is a complex topic—far too complex to be covered completely in this book.
Because this book deals with charts, I focus on the VBA elements that are relevant
to creating and manipulating charts.
If your goal is to become a VBA expert,this book nudges you in that direc-
tion,but it doesn’t get you to your final destination.You may want to check
out another book of mine:Excel 2002 Power Programming with VBA,pub-
lished by Hungry Minds,Inc.That book covers all aspects of VBA program-
ming for Excel.
389
How to rotate a single page in a pdf document - rotate PDF page permanently in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Users to Change the Rotation Angle of PDF File Page Using C#
rotate pdf pages individually; saving rotated pdf pages
How to rotate a single page in a pdf document - VB.NET PDF Page Rotate Library: rotate PDF page permanently in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
PDF Document Page Rotation in Visual Basic .NET Class Application
how to change page orientation in pdf document; how to save a pdf after rotating pages
An Introductory Example
To get the ball rolling, I begin with a simple example of a VBA procedure. This pro-
cedure, named 
CountCharts
, displays a message box that tells you the name of the
active sheet and the number of charts on the sheet. Figure 14-1 shows the message
box that pops up when this macro is executed.
Figure 14-1: This message box displays the sheet name and the number of charts.
To create this procedure, insert a VBA module into a project and then enter the
following VBA code into the code window of the module:
Sub CountCharts()
‘Counts the charts on the active sheet
Dim Msg As String
Msg = ActiveSheet.Name
Msg = Msg & vbNewLine
Msg = Msg & ActiveSheet.ChartObjects.Count
MsgBox Msg
End Sub
To execute the macro, activate a worksheet and press Alt+F8 to display the
Macro dialog box. Select 
CountCharts
from the list and click Run. Or, you can exe-
cute directly from the VB Editor. Put the mouse cursor anywhere within the proce-
dure and then press F5.
Look closely at the code line by line:
390
Part III: Using VBA with Charts
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
Able to remove a single page from adobe PDF document in VB.NET. This is a VB .NET example for how to delete a single page from a PDF document.
how to rotate one pdf page; rotate individual pdf pages reader
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
Able to remove a single page from PDF document. Ability to remove a range of pages from PDF file. How to delete a single page from a PDF document.
rotate all pages in pdf preview; rotate one page in pdf
The first line of the procedure is called the declaration line. Notice that the
procedure starts with the keyword 
Sub
, followed by the name of the pro-
cedure (
CountCharts
). This procedure uses no arguments, so it is followed
by a set of empty parentheses.
The second line is simply a comment (optional) that describes what the
procedure does. The initial apostrophe designates this line as a comment.
The next line uses the 
Dim
keyword to declare a variable (named 
Msg
) and
its data type (
String
). Declaring variables isn’t necessary, but (as you’ll
see later) it’s an excellent practice.
The procedure’s next line assigns a value to the variable. It uses the 
Name
property of the 
ActiveSheet
. At this point, the 
Msg
variable contains the
name of the active sheet (such as Sheet1).
The next statement uses the concatenation operator (&) to add a “new
line” character to the end of the current contents of the 
Msg
variable.
The next statement counts the number of chart objects on the active sheet,
and this value is appended to the contents of the 
Msg
variable, again
using the concatenation operator.
The next statement uses VBA’s 
MsgBox
function to display the contents of
the 
Msg
variable. This appears in the form of a pop-up dialog box that the
user must respond to.
The procedure ends with an 
End Sub
statement.
This simple macro uses some common VBA language elements, including:
A comment (the line preceded by the apostrophe)
A variable declaration
Three assignment statements
String concatenation (using the & operator)
References to properties (
Name
and 
Count
)
The 
MsgBox
function
Not bad for a first effort, eh? The remainder of this chapter provides more infor-
mation on these (and many other) programming concepts.
Chapter 14: VBA Programming Concepts
391
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
C#.NET PDF file & pages edit, C#.NET PDF pages extract, copy, paste, C#.NET rotate PDF pages, C# Users can view PDF document in single page or continue pages.
rotate a pdf page; rotate pdf pages on ipad
How to C#: Basic SDK Concept of XDoc.PDF for .NET
insert, delete, re-order, copy, paste, cut, rotate, and save from file or query data and save the PDF document. The PDFPage class presents a single page in a
rotate one page in pdf reader; how to reverse page order in pdf
Using Comments in Your Code
A commentis descriptive text embedded within your code. VBA completely ignores
the text of a comment. It’s a good idea to use comments liberally to describe what
you do (because the purpose of a particular VBA instruction is not always obvious).
You can use a complete line for your comment, or you can insert a comment
after an instruction on the same line. A comment is indicated by an apostrophe.
Following are examples of comments:
‘ Close the workbook without saving the changes
ActiveChart.Parent.Delete ‘ Delete the Chart object
VBA ignores any text that follows an apostrophe through to the end of the line.
An exception occurs when an apostrophe is contained within quotation marks. For
example, the following statement doesn’t contain a comment, even though it has
an apostrophe:
Result = “Can’t create a chart.”
Using Variables, Data Types,
and Constants
A variableis a named storage location in your computer’s memory. Variables can
accommodate a wide variety of data types—from simple Boolean values (True or
False) to large, double-precision values. You assign a value to a variable by using
the assignment operator, which is an equal sign.
Following are some examples of assignment statements that use various types of
variables. The variable names are to the left of the equal sign. Each statement
assigns the value to the right of the equal sign to the variable on the left.
x = 1
SeriesCount = 4
392
Part III: Using VBA with Charts
About the MsgBox Function
Many of the examples in this chapter use VBA’s 
MsgBox
function. One of the uses for
this function is to display a message to the user in a pop-up box. This is often useful
for displaying the value of a variable at various points throughout your code.
For more details on the 
MsgBox
function, consult VBA’s help.
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
TIFF conversion control, C# developers can render and convert PDF document to TIFF image file with no loss in original file quality. Both single page and multi
rotate pdf page few degrees; pdf rotate single page and save
VB.NET PDF: Basic SDK Concept of XDoc.PDF
insert, delete, re-order, copy, paste, cut, rotate, and save from file or query data and save the PDF document. The PDFPage class presents a single page in a
rotate individual pages in pdf reader; rotate pdf pages by degrees
LoanPayoffAmount = 243089
ChartHasATitle = False
x = x + 1
MyNum = YourNum * 1.25
TitleText = “4th Quarter Summary”
DateStarted = #4/1/2003#
Understanding data types
VBA makes life easy for programmers because it can automatically handle all the
details involved in dealing with data. The term data type refers to how data is
stored in memory—as integers, real numbers, strings, and so on.
Although VBA can take care of data typing automatically, it does so at a cost—
slower execution and less efficient use of memory. If you want optimal speed for
your code, you need to be familiar with data types. Generally, it’s best to use the
data type that uses the smallest number of bytes, yet still can handle all the data
that will be assigned to it.
When VBA works with data, execution speed is a function of the number of bytes
that VBA has at its disposal. In other words, the fewer bytes used by data, the faster
VBA can access and manipulate the data. Table 14-1 lists VBA’s assortment of built-
in data types.
T
ABLE
14-1 VBA’S DATA TYPES
Data Type
Bytes Used
Range of Values
Byte
1 byte
0 to 255
Boolean
2 bytes
TRUE or FALSE
Integer 
2 bytes
–32,768 to 32,767
Long
4 bytes
–2,147,483,648 to 2,147,483,647
Single
4 bytes
–3.402823E38 to –1.401298E–45 (for
negative values); 1.401298E–45 to
3.402823E38 (for positive values)
Double 
8 bytes
–1.79769313486231E308 to
–4.94065645841247E–324 (negative
values); 4.94065645841247E–324 to
1.79769313486232E308 (positive values)
Currency 
8 bytes
–922,337,203,685,477.5808 to
922,337,203,685,477.5807
Continued
Chapter 14: VBA Programming Concepts
393
VB.NET PDF File & Page Process Library SDK for vb.net, ASP.NET
With VB.NET PDF SDK, PDF document page can be rotated to 90, 180, and 270 in clockwise. Both a single page and whole file pages can be rotated and saved as
rotate pages in pdf and save; how to rotate a single page in a pdf document
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
Page: Rotate a PDF Page. PDF Read. Text: Extract Text from PDF. Text: Search Text in PDF. Users can view PDF document in single page or continue pages.
rotate single page in pdf reader; how to rotate just one page in pdf
T
ABLE
14-1 VBA’S DATA TYPES (Continued)
Data Type
Bytes Used
Range of Values
Decimal
14 bytes
+/–79,228,162,514,264,337,593,543,950,335
with no decimal point;
+/–7.9228162514264337593543950335
with 28 places to the right of the decimal
Date
8 bytes
January 1, 0100 to December 31, 9999
Object
4 bytes
Any object reference
String (variable-length) 10 bytes + 
0 to approximately 2 billion 
string length
String (fixed-length)
Length of string
1 to approximately 65,400
Variant (with numbers) 16 bytes
Any numeric value up to the range of a
double data type
Variant 
22 bytes + 
0 to approximately 2 billion
(with characters)
string length
Declaring variables
Before you use a variable in a procedure, you may want to declareit. Declaring a
variable tells VBA its name and data type. You declare a variable by using the 
Dim
keyword. For example, the following statement declares a variable named 
Count
to
be an integer.
Dim Count As Integer
You also can declare several variables with a single 
Dim
statement. For example:
Dim x As Integer, UserName As String, Rate As Double
If you don’t declare the data type for a variable that you use, VBA uses the
default data type, 
variant
. Data stored as a variant acts like a chameleon: It
changes type depending on what you do with it.
Introducing object variables
An object variable is a variable that represents an entire object, such as a range or
a chart. Object variables, as with normal variables, are declared with a 
Dim
state-
ment. For example:
394
Part III: Using VBA with Charts
Dim UserRange As Range
Dim CurrentChart As Chart
Dim MySeries As Series
To create an object variable, use the 
Set
statement. Here are a few examples:
Set MyRange = Range(“A1:A100”)
Set CurrentChart = ActiveChart
Set MySeries = ActiveChart.SeriesCollection(1)
Using constants
A variable’s value may—and often does—change while a procedure is executing
(that’s why it’s called a variable). Sometimes, you need to refer to a named value or
string that never changes; in other words, a constant.
DECLARING CONSTANTS
You declare a constant by using the 
Const
statement. Here are some examples:
Const NumQuarters as Integer = 4
Const Rate = .0725, Period = 12
Const CompanyName as String = “Acme Snapholytes”
The second statement declares two constants with a single statement, but it
doesn’t declare a data type. Consequently, the two constants are variants. Because a
constant never changes its value, you normally want to declare your constants as a
specific data type. 
The scopeof a constant depends on where it is declared within your module:
To make a constant available within a single procedure only, declare it
after the 
Sub
or 
Function
statement to make it a local constant.
To make a constant available to all procedures in a module, declare it
before the first procedure in the module.
To make a constant available to all modules in the workbook, use the
Public
keyword and declare the constant before the first procedure in a
module.
Using constants throughout your code in place of hard-coded values or strings is
a good programming practice. For example, if your procedure needs to refer to a
specific value (such as an interest rate) several times, it’s better to declare the value
as a constant and use the constant’s name rather than its value in your expressions.
This technique makes your code more readable and makes it easier to change should
the need arise—you have to change only one instruction rather than several.
Chapter 14: VBA Programming Concepts
395
USING BUILT-IN CONSTANTS
VBA has many built-in constants that you can use in your code. For example, the
following statement changes the chart type of the active chart to a line chart:
ActiveChart.ChartType = 3 
Many people find it difficult to remember that a value of 3 represents a line
chart. Thankfully, you can use a built-in constant instead. The constant 
xlLine
has
a value of 3 and can be used as follows:
ActiveChart.ChartType = xlLine
When you record a macro, the macro recorder almost always uses built-in con-
stants rather than the actual values.
Using dates
You can use a string variable to store a date, of course, but then you can’t perform
date calculations using the variable. Using the 
Date
data type is a better way to
work with dates.
A variable defined as a 
Date
uses 8 bytes of storage and can hold dates ranging
from January 1, 0100, to December 31, 9999. That’s a span of nearly 10,000 years—
more than enough for even the most aggressive financial forecast! The 
Date
data
396
Part III: Using VBA with Charts
Forcing Yourself to Declare All Variables
To force yourself to declare all the variables that you use, include the following as the
first instruction in your VBA module:
Option Explicit
This statement causes your procedure to stop whenever VBA encounters an undeclared
variable name. VBA issues an error message (
Compile error: Variable not
defined
), and you must declare the variable before you can proceed.
Using an 
Option Explicit
statement can prevent errors that might be very difficult
to identify. For example, your procedure might use a variable named 
Interest
. But
what if you misspell the variable—for example, 
Intrest
? VBA will consider it to be a
new variable, with a value of 0, and no error will be generated. If an 
Option
Explicit
statement is present, this error will be flagged, and you can correct it.
To ensure that the 
Option Explicit
statement appears in every new VBA module,
enable the Require Variable Declaration option on the Editor tab of the VB Editor’s
Options dialog box. 
type is also useful for storing time-related data. In VBA, you specify dates and
times by enclosing them between pound signs (#).
The range of dates that VBA can handle is much larger than Excel’s own date
range,which begins with January 1,1900.Therefore,be careful that you
don’t attempt to use a date in a worksheet that lies outside Excel’s accept-
able date range.
Here are some examples of declaring variables and constants as 
Date
data types:
Dim Today As Date, StartTime As Date
Const FirstDay As Date = #1/1/2003#
Const Noon = #12:00:00#
Date variables display dates according to your system’s short date format,
and times appear according to your system’s time format (either 12 or 24
hours).You can modify these system settings by using the Regional Settings
option in the Windows Control Panel.
Using Assignment Statements
An assignment statement is a VBA instruction that evaluates an expression and
assigns the result to a variable or an object. An expressionis a combination of key-
words, operators, variables, and constants that yields a string, number, or object.
An expression can perform a calculation, manipulate characters, or test data.
If you know how to create formulas in Excel, you’ll have no trouble creating
expressions in VBA. You can assign a VBA expression to a variable or use it as a prop-
erty value. VBA uses the equal sign (=) as its assignment operator. Note the following
examples of assignment statements (the expressions are to the right of the equal sign):
x = 1
x = x + 1
x = (y * 2) / (z  * 2)
SheetHasCharts = True
Expressions often use functions. These can be VBA’s built-in functions, Excel’s
worksheet functions, or custom functions that you develop in VBA. I discuss VBA’s
built-in functions later in this chapter.
Chapter 14: VBA Programming Concepts
397
Operators play a major role in VBA. Familiar operators describe mathematical oper-
ations, including addition (+), multiplication (*), division (/), subtraction (–), exponen-
tiation (^), and string concatenation (&). Less familiar operators are the backslash (\)
that’s used in integer division, and the Mod operator that’s used in modulo arithmetic.
VBA also supports the same comparative operators used in Excel formulas: equal
to (=), greater than (>), less than (<), greater than or equal to (>=), less than or equal
to (<=), and not equal to (<>). Additionally, VBA provides a full set of logical oper-
ators, such as 
And
Not
Or
, and so on. The order of precedence for operators in VBA
exactly matches that in Excel. Of course, you can add parentheses to change the
natural order of precedence.
Using Arrays
An arrayis a group of elements of the same type that have a common name. You
refer to a specific element in the array by using the array name and an index num-
ber. For example, you may define an array of 12 string variables so that each vari-
able corresponds to the name of a different month. If you name the array
MonthNames
, you can refer to the first element of the array as 
MonthNames(0)
, the
second element as 
MonthNames(1)
, and so on, up to 
MonthNames(11)
.
Declaring an array
You declare an array with a 
Dim
or 
Public
statement just as you declare a regular
variable. You also can specify the number of elements in the array. You do so by
specifying the first index number, the keyword 
To
, and the last index number—all
inside parentheses. For example, here’s how to declare an array comprised of
exactly 100 integers:
Dim MyArray(1 To 100) As Integer
When you declare an array, you need to specify only the upper index, in which
case VBA (by default) assumes that 0 is the lower index. Therefore, the following
two statements have the same effect:
Dim MyArray(0 to 100) As Integer
Dim MyArray(100) As Integer
In both cases, the array consists of 101 elements.
Declaring multidimensional arrays
The array examples in the preceding section are one-dimensional arrays. VBA arrays
can have up to 60 dimensions. The following statement declares a 100-integer array
with two dimensions:
398
Part III: Using VBA with Charts
Documents you may be interested
Documents you may be interested