ACC2000: Yes/No Field Not Evaluating "-1" or "0" in ComparisonsID: Q208579
|
Code written in Access Basic that uses "-1" or "0" (with the quotation marks) to compare a Yes/No field in a table or recordset does not work properly when you convert the Access Basic code to Visual Basic for Applications code. In Microsoft Access version 2.0, which uses Access Basic, the numeric comparisons are evaluated as strings. In Microsoft Access 7.0 and later, which use Visual Basic for Applications, the numeric comparisons are evaluated as Boolean values.
In Access Basic the condition
If rs![yesnofield] = "-1" Then
is evaluated as True, and the condition
If rs![yesnofield] = "0" Then
is evaluated as False.
In an open Access Basic or Visual Basic for Application module window, use
the Find command on the Edit menu to check for instances
of the strings "-1" or "0" (with the quotation marks).
Change all instances in Visual Basic for Applications where "-1" or "0" is
used to compare a Yes/No field in a table or recordset as follows.
If you are using the following expression in Access Basic
IF rs![yesnofield] = "-1" Then
in Visual Basic for Applications, change the code so that there are no
quotation marks around the number "-1" or use the word "True" as in the
following example:
IF rs![yesnofield] = -1 Then
-or-
IF rs![yesnofield] = True Then
If you are using the following expression in Access Basic:
IF rs![yesnofield] = "0" Then
in Visual Basic for Applications, change the code so that there are no
quotation marks around the number "0" or use the word "False" as in the
following example:
IF rs![yesnofield] = 0 Then
-or-
IF rs![yesnofield] = False Then
Sub Form_Current()
Dim rs As Recordset
Set rs = Me.RecordsetClone
rs.Bookmark = Me.Bookmark
If rs![Discontinued] = "-1" Then
MsgBox "This product is discontinued."
End If
Set rs = Nothing
End Sub
Sub Form_Current()
to read as follows:
Private Sub Form_Current()
For more information about the Boolean data type, in the Visual Basic Editor, click
Microsoft Visual Basic Help on the Help menu, type "Boolean data type" in
the Office Assistant or the Answer Wizard, and then click Search to
view the topic.
Additional query words: prb
Keywords : kbdta CnvOthr PgmOthr
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbprb
Last Reviewed: May 25, 1999