Использование Javascript в Excel
В настоящее время я создаю книгу Excel, которая запускает симуляцию типа Монте-Карло. Код симулятора в настоящее время написан на Javascript, и перенос полностью на VBA кажется нетривиальным, учитывая неопытность команды с этим языком. Итак, я смог включить компоненты javascript в файл WSC, который хорошо работает. (Упрощенный пример ниже.)
Sub Simulate()
Set ATPSim = GetObject("script:http://www.example.com/ATPSim.wsc")
'Set ATPSim = GetObject("script:C:\ATPSim.wsc")
Dim ParamOne As Integer
ParamOne = Range("B2").Value
Dim ParamTwo As Double
ParamTwo = Range("B3").Value
Dim ParamThree As Double
ParamThree = Range("B4").Value
Range("B1").Value = ATPSim.simulate(ParamOne, ParamTwo, ParamThree)
End Sub
К сожалению, это требует от меня размещения кода javascript или использования неискушенных пользователей для обновления абсолютного пути. Есть ли автономное решение? Я бы предпочел хранить все в одном файле.xlsm, который можно отправить пользователям по электронной почте.
1 ответ
Вы должны быть в состоянии разместить JS в COM-компоненте и использовать WSH для доступа к нему.
Смотрите пример здесь: Как я могу использовать JavaScript в макросе Excel?