Upload
archibald-perry
View
216
Download
0
Embed Size (px)
Citation preview
Controls and Events
The Next Step
• In the first module, we discussed general problem solving
• In this module, we’ll apply what we learned, from specification to design to implementation and testing, on a very simple process
• Later we’ll gradually introduce VB features that let us implement more complex processes
But First…
• We have to learn enough about VBA and Excel to write an interesting program!
• So our goal in this module is to learn those basics and apply them to a problem
Relating VBA to Processes
• We will typically represent the objects in our process specification by Excel or VBA controls and other Excel and VBA objects
• Objects and controls have events associated with them
• The process events will be translated into control events for which we will write procedures
Writing a Macro
• We’re going to start by writing (not recording) a small macro with a button to control it
• This will introduce a number of basic concepts
The Code
Option Explicit'*****************************************' Turn the active cell red'*****************************************Sub RedCell() ActiveCell.Interior.Color = vbRedEnd Sub
The Video
• You can watch the steps of writing the macro and adding the button on the video called Button Demo
• The workbook is available on the class site• After you watch, try writing your own macro,
say GreenButton, in the same worksheet. Give it a button and/or a piece of clip art to activate it
Events
• Clicking the button or the clip art is an event that triggers the execution of the macro
• This is a pattern we will continue to follow: our macros will be triggered by events that happen in the spreadsheet
• Later we will also write macros that can be called by other macros
Referring to Objects and Properties
• Consider the expression ActiveCell.Interior.Color = vbRed• ActiveCell is an object recognized by Excel: the cell
that has been selected in the active worksheet• Interior is a subobject of the ActiveCell: it’s just
the interior of the cell• Color is a property of the Interior, and as such can
be set to a value by an assignment statement
Properties vs Variables
• We’ll often be setting the values of properties of objects
• Cells in particular have a property called the Value: ActiveCell.Value = 5 will make the number 5 show up in the cell
• Besides properties of objects, we’ll also use more general variables for quantities we want our program to remember and work with