If you have inserted some Active-X controls into the UserForm of a worksheet, clicking on the UserForm will reveal the objects together with the associated events, as shown in Figure 16.2
16.2: Object Properties
An Excel VBA object has properties and methods. Properties are like the characteristics or attributes of an object. For example, Range is an Excel VBA object and one of its properties is value. We connect an object to its property by a period(a dot or full stop). The following example shows how we connect the property value to the Range object.
Cells is also an Excel VBA object, but it is also the property of the range object. So an object can also be a property, it depends on the hierarchy of the objects. Range has higher hierarchy than cells, and interior has lower hierarchy than Cells, and color has lower hierarchy than Interior, so you can write
Range(“A1:A3″).Cells(1, 1).Interior.Color = vbYellow
This statement will fill cells (1,1) with yellow color. Notice that although the Range object specifies a range from A1 to A3, but the cells property specifies only cells(1,1) to be filled with yellow color, it sorts of overwrite the range specified by the Range object. If you wish to fill the cells from A1 to A3 with yellow color you can use the following syntax:
Range(“A1:A3″).Interior.Color = vbYellow
Another object is font that belongs to the Range object. And font has its properties.For example, Range(“A1:A4”).Font.Color=vbYellow , the color property of the object Font will result in all the contents from cell A1 to cell A4 to be filled in yellow color.
Sometime it is not necessary to type the properties, Excel VBA IntelliSense will display a drop-down list of proposed properties after you type a period at the end of the object name. You can then select the property you want by double clicking the it or by highlighting it then press the Enter key. The IntelliSense drop-down is shown in Figure 16.3