For long time, on PB I missed the SQL command "between", but it's very simple using a macro:
Code: Select all
macro between(btwfld, btwfrm, btwto)
btwfld >= btwfrm AND btwfld <= btwto
endmacro
if between(fielddata, 100, 1000)
... code
endif
Code: Select all
macro between(btwfld, btwfrm, btwto)
btwfld >= btwfrm AND btwfld <= btwto
endmacro
if between(fielddata, 100, 1000)
... code
endif
Code: Select all
Macro IsBetween(Value, Lower, Upper)
((Value) >= (Lower) And (Value) <= (Upper))
EndMacro
Macro IsNotBetween(Value, Lower, Upper)
((Value) < (Lower) Or (Value) > (Upper))
EndMacro
For Index = 5 To 15
If IsBetween(Index, 8, 12)
Debug "IsBetween 8 and 12 : " + Str(Index)
EndIf
Next
For Index = 5 To 15
If IsNotBetween(Index, 8, 12)
Debug "IsNotBetween 8 and 12 : " + Str(Index)
EndIf
Next
With or without parentheses ... your Macro IsNotBetween() will not work correctly. It must use Or instead of And. Additionally, when IsBetween() uses >= and <=, IsNotBetween() shouldn't use that, but > and < instead for the sake of consistent Boolean logic:Guimauve wrote:Code: Select all
Macro IsNotBetween(Value, Lower, Upper) ((Value) <= (Lower) And (Value) >= (Upper)) EndMacro
Code: Select all
Macro IsNotBetween(Value, Lower, Upper)
((Value) < (Lower) Or (Value) > (Upper))
EndMacro