その6で作ったEvalVariableプロシージャのうち、変数かどうかを判別する部分をつかいまわしたかったので、そこだけ関数にした。
'変数を評価するプロシージャ Sub EvalVariable(ByRef Memory() As String) If UBound(Memory) < 1 Then Exit Sub For i = 1 To UBound(Memory) If IsVariable(Memory(i)) Then 'VariablesにMemory(i)があればメモリをその値に書き換え、 '無ければ登録してEmptyを入れる If Variables.Exists(Memory(i)) Then Memory(i) = Variables.Item(Memory(i)) Else Call Variables.Add(Memory(i), Empty) Memory(i) = "" End If End If Next i End Sub '変数かどうかを判別する関数 Function IsVariable(ByRef x As String) As Boolean 'キーワードでも型でも関数でも無く、アルファベットであれば変数とみなす。 IsVariable = _ Not Keywords.Exists(x) And _ Not VariableTypes.Exists(x) And _ Not VBAFunctions.Exists(x) And _ x Like "*[a-z]*" End Function