问题

我希望使用Javascript中的宏而不是默认的VBA操作excel电子表格.我可以使用以下VBA代码执行javascript代码

 'javascript to execute
Dim b As String
b = "function meaningOfLife(a,b) {return 42;}"

'VBA tool to run it
Dim o As New ScriptControl
o.Language = "JScript"
o.AddCode b
MsgBox o.Run("meaningOfLife", 0, 1)
 

这使我能够执行任意的javascript,但是我无法从javascript环境中访问excel电子表格.有没有办法可以从javascript中设置和获取活动工作表中的工作表值?

  最佳答案

它取决于你想要做什么样的“Excel编程”。

如果您想操作 Excel 文件,您可以通过 COM 自动化,甚至 ODBC 在某种程度上,使用在 Windows 脚本环境下运行的 JavaScript。

但是如果您想让您的代码在活动的 Excel 会话中运行,这样访问者将会看到的事情,那么您的选项就更少了。

看看这个问题,当我有一些JavaScript我想在Excel中运行并且没有预算转换为VBA时,我发布了几年:

如何在Excel宏中使用JavaScript?

  相同标签的其他问题

javascriptexcelvbaexcel-vba