I'm trying to compare two string values in VBA but I've found a weird quirk of VBA ( or it seems so ). See Below:
If I do the following:
Debug.Print("Same" & StrComp(Me.txtFirstName.Value, Me.txtFirstName.Value, vbTextCompare))
Debug.Print("Different" & StrComp(Me.txtFirstName.Value, Me.txtFirstName.OldValue, vbTextCompare))
I get:
Same: 0
Different: 1
Which is something I would expect. However. If I then try to do the following:
Debug.Print("Same" & StrComp(Me.txtFirstName.Value, Me.txtFirstName.Value, vbTextCompare) = 0)
Debug.Print("Different" & StrComp(Me.txtFirstName.Value, Me.txtFirstName.OldValue, vbTextCompare) = 0)
I then get:
Same: False
Different: False
For reference, the values should be (for example)
Same test: "Jane", "Jane"
Different test: "Jane", "John"
Which is not what I expect. I know I'm doing something incorrectly but I'm not exactly sure what.
Any help is appreciated.
EDIT:
When I now enter this into an if statement:
If (StrComp(Me.txtFirstName.Value, Me.txtFirstName.OldValue, vbTextCompare) = 0) Then
Debug.Print ("Hello")
Else
Debug.Print ("Goodbye")
End If
I get a result of Goodbye