Страницы: 1
RSS
Фантазии на тему JavaScript + VBA
 
Набросал вот такую вот функцию в VBA с использованием JavaScript, даже работает...
Поделитесь у кого есть практические идеи желательно с примерами более полезного использования
данного (VBA+JavaScript) тандема?


Код
' Функция выполнения JScript кода в VBA (на примере функции наибольшего общего делителя)
Public Function JScriptExec(FNum As Integer, SNum As Integer) As Long
  With CreateObject("ScriptControl")
    .Language = "JScript"
    .AllowUI = False
    .SitehWnd = Application.Hwnd
    .AddCode "function gcd (a, b) {var c;a = +a;b = +b; " & _
        "if (a !== a || b !== b) { return NaN; } " & _
        "if (a === Infinity || a === -Infinity || b === Infinity || b === -Infinity) { return Infinity; } " & _
        "if ((a % 1 !== 0) || (b % 1 !== 0)) { throw new Error(""Can only operate on integers""); } " & _
        "while (b) {c = a % b;a = b;b = c;} " & _
           "return (0 < a) ? a : -a;};"
    JScriptExec = .Run("gcd", FNum, SNum)
  End With
End Function

кнопка оформления кода в сообщении - <...>

Логически предполагаю, что идеи+примеры должны реализовывать то, что на VBA либо невозможно сделать, либо сложно....
 
Код
даже работает

работает, пока у вас 32-битный Office
как установите 64-битный - не будет работать (там нет ScriptControl)

зачем вам чужие идеи?
если идеи нужны, - есть раздел форума «курилка»
а в "вопросах по Excel" идеи не придумывают, - а помогают с реализацией идей обратившегося
 
e_artem, на форуме бывает nerv - настоящий программист на jscript+vba. Можете поискать его сообщения
https://www.google.ru/search?q=nerv+jscript+site%3Aplanetaexcel.ru%2Fforum
В частности
http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=5&TID=55597
http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=5&TID=55672
 
Спасибо
Страницы: 1
Читают тему
Наверх