Так что в одном из моих проектов у меня есть обратный вызов оценщика, который предлагает мне лямбда-подобный синтаксис для работы с массивами:
fMitPCInt = Mitigations.Filter(cbEqn, Eqn("$_::isInternal")).Map(cbMit, Eqn("$_.GetEFI(""" & sSeverityInt & """)"))
Это, по сути, генерирует обратный вызов, который вызывает Application.Evaluate
(я знаю, что неэффективно, но это хороший синтаксис).
Если коротко, то в Excel365 Application.Evaluate("1")
выдает ошибку. В результате тестирования я обнаружил следующее:
Application.Evaluate("3") 'throws error
Application.Evaluate("2") 'throws error
Application.Evaluate("1") 'throws error
Application.Evaluate("0") 'works
Application.Evaluate("-1") 'works
Application.Evaluate("-2") 'works
Application.Evaluate("-3") 'works
Application.Evaluate("1+0") 'works
По сути, Application.Evaluate
просто не работает для положительных чисел в Excel365.
Как мы можем обойти эту проблему?