Some form and report properties that returned Variant values in earlier
versions of Microsoft Access now return strict data types. The term for
this is
strong typing or
strict typing. Visual Basic for Applications code in your database that includes strictly typed properties runs faster in Access 2000. However, when you convert a database from an earlier version of Access to Access 2000, you must verify that no errors are introduced in your application by the new data types.
The following are lists of properties that returned Variant values in earlier versions of Microsoft Access, but which return specific data types in Access 2000.
Properties Returning String Data Types
AfterDelConfirm InputMask OnGotFocus OnRetreat
AfterInsert Item OnInsert OnTimer
AfterUpdate MenuBar OnKeyDown OnUnload
BeforeDelConfirm OLEClass OnKeyPress OnUpdated
BeforeInsert OnActivate OnKeyUp OrderBy
BeforeUpdate OnApplyFilter OnLoad Picture
Caption OnChange OnLostFocus RecordSource
Class OnClick OnMenu RowSource
ColumnWidths OnClose OnMouseDown RowSourceType
ControlName OnCurrent OnMouseMove ShortcutMenuBar
ControlSource OnDblClick OnMouseUp SourceDoc
ControlTipText OnDeactivate OnNoData SourceItem
DatasheetFontName OnDelete OnNotInList SourceObject
DefaultValue OnEnter OnOpen StatusBarText
Filter OnError OnPage Tag
Format OnExit OnPrint ValidationRule
FormName OnFilter OnPush ValidationText
HelpFile OnFormat OnResize
Properties Returning Boolean Data Types
AddColon Dirty
AutoLabel HideDuplicates
Cancel RepeatSection
Properties Returning Double Data Types
CurrentX ScaleLeft
CurrentY ScaleTop
ScaleHeight ScaleWidth
Properties Returning Integer Data Types
DatasheetGridlinesBehavior FillStyle OLETypeAllowed
DrawMode LabelAlign RunningSum
DrawStyle LabelX ScaleMode
DrawWidth LabelY
Properties Returning Long Data Types
BackColor DatasheetBackColor FillColor
BorderColor DatasheetForeColor ForeColor
CurrentRecord DatasheetGridlinesColor
Steps to Reproduce Behavior
The following example demonstrates the error message that you receive if
you try to set the
ControlSource property of a text box control to
Null in Access 2000. The
ControlSource property is typed as a String data type in Access 2000; you receive an error because String data types cannot contain
Null values.
- Start Microsoft Access 2000 and open the sample database Northwind.mdb.
- Open the Customers form in Design view.
- Add a command button with the following properties to the form:
Command button
Name: CommandStrict
- Set the OnClick property of the command button to the following event procedure:
Private Sub CommandStrict_Click()
Me![CompanyName].ControlSource = NULL
End Sub
- On the View menu, click Form View, and then click the CommandStrict button. Note that you receive the following error message:
Run-time error '13':
Type mismatch