В формулах часто используются диапазоны, например,
=If(A1=2,"Yes","No")
В этом примере A1
вводится с помощью объекта Range
, представляющего ячейку A1
.Но скажем, у меня есть какой-то объект из какого-то класса.Как бы я ввел это в формулу?
На данный момент моя лучшая ставка (что довольно ужасно) - это использовать коллекцию и UDF:
Public FormulaVariables as Collection
Public Function getVar(key as string) as object
set getVar = FormulaVariables(key)
end function
Public Sub addVar(key as string, obj as object)
if FormulaVariables is nothing then set FormulaVariables = new Collection
FormulaVariables.add obj,key
end sub
Так, чтобы я мог позвонить addVar("someCoolId",myObject)
и затем используйте формулу как:
=If(checkSomething(getVar("someCoolId")),"Yes","No")