@@ -456,7 +456,7 @@ End Sub
456456Private Sub AddVariable (ByRef variable As String , ByRef aKey As String )
457457 Dim VarIdx As Long
458458
459- CastCase variable, aKey
459+ aKey = CastCase(variable)
460460 VarIdx = GetCBItemIdx(ExprVariables, aKey)
461461 If VarIdx = -1 Then 'Ensure uniqueness
462462 AppendToCBbuffer ExprVariables, aKey
@@ -802,13 +802,13 @@ Private Function callback(ByRef sClassName As String) As Object
802802 Set callback = CallByName(New VBAcallBack, sClassName, VbGet)
803803End Function
804804
805- Private Sub CastCase (ByRef Expression As String , ByRef outStr As String )
805+ Private Function CastCase (ByRef Expression As String ) As String
806806 If Not NotIsPI(Expression) Then
807- outStr = LCase$(Expression) 'Case insensitive for PI
807+ CastCase = LCase$(Expression) 'Case insensitive for PI
808808 Else
809- outStr = Expression
809+ CastCase = Expression
810810 End If
811- End Sub
811+ End Function
812812
813813Private Function CastOPtype (ByRef strOperand As String , ByRef Negate As Boolean ) As Variant
814814 If IsLiteralString(strOperand) Then 'Literal strings like ['string']
@@ -1397,8 +1397,8 @@ Private Function GetEvalToken(ByRef Expression As String) As token
13971397 GetEvalToken.Arg2.FunctionIn = (GetEvalToken.Arg2.funcName <> vbNullString) Or GetEvalToken.Arg2.UDFFunctionIn
13981398 GetEvalToken.Arg1.LinkedIndex = GetIndex(GetEvalToken.Arg1.DefString)
13991399 GetEvalToken.Arg2.LinkedIndex = GetIndex(GetEvalToken.Arg2.DefString)
1400- GetEvalToken.Arg1.LinkedVar = GetCBItemIdx(ExprVariables, GetEvalToken.Arg1.DefString)
1401- GetEvalToken.Arg2.LinkedVar = GetCBItemIdx(ExprVariables, GetEvalToken.Arg2.DefString)
1400+ GetEvalToken.Arg1.LinkedVar = GetCBItemIdx(ExprVariables, CastCase( GetEvalToken.Arg1.DefString) )
1401+ GetEvalToken.Arg2.LinkedVar = GetCBItemIdx(ExprVariables, CastCase( GetEvalToken.Arg2.DefString) )
14021402 GetEvalToken.Arg1.Implicit = (GetEvalToken.Arg1.LinkedIndex >= 0 )
14031403 GetEvalToken.Arg2.Implicit = (GetEvalToken.Arg2.LinkedIndex >= 0 )
14041404 GetEvalToken.Arg1.FactorialIn = (InStrB(1 , GetEvalToken.Arg1.DefString, op_Factorial) = LenB(GetEvalToken.Arg1.DefString) - 1 )
@@ -1412,7 +1412,7 @@ Private Function GetEvalToken(ByRef Expression As String) As token
14121412 GetEvalToken.Arg1.UDFFunctionIn = IsUDFFunction
14131413 GetEvalToken.Arg1.FunctionIn = (GetEvalToken.Arg1.funcName <> vbNullString) Or GetEvalToken.Arg1.UDFFunctionIn
14141414 GetEvalToken.Arg1.LinkedIndex = GetIndex(GetEvalToken.Arg1.DefString)
1415- GetEvalToken.Arg1.LinkedVar = GetCBItemIdx(ExprVariables, GetEvalToken.Arg1.DefString)
1415+ GetEvalToken.Arg1.LinkedVar = GetCBItemIdx(ExprVariables, CastCase( GetEvalToken.Arg1.DefString) )
14161416 GetEvalToken.Arg1.Implicit = (GetEvalToken.Arg1.LinkedIndex >= 0 )
14171417 GetEvalToken.Arg1.FactorialIn = (InStrB(1 , GetEvalToken.Arg1.DefString, op_Factorial) = LenB(GetEvalToken.Arg1.DefString) - 1 )
14181418 End If
0 commit comments