RunMacro

RunMacro 在在线打开的PageOffice文档中执行已录制的宏指令或者新编写的宏指令(VBA代码)。

语法:

document.getElementById("PageOfficeCtrl1").RunMacro( MacroName, MacroScript );//运行文档中的无返回值的宏命令.
strValue= document.getElementById("PageOfficeCtrl1").RunMacro( MacroName,MacroScript);//运行有返回值的宏命令.
参数 描述
MacroName 字符串类型,表示宏指令名称。
MacroScript 字符串类型,表示要执行的宏指令代码,可选。

[!note]

缺省该参数时,在客户端调用时,会根据宏指令名称执行打开的文档中已录制或存在的宏指令;如果传递该参数,就直接执行该参数中的宏指令。这里的宏指令指的是完整的VBA函数字符串,必须包含函数的开始和结束,并且函数的名字要和MacroName参数指定的函数名字完全相同。


[!tip]

当参数MacroScript中有多句宏指令代码时,请把每句代码单独放一行(VBA的要求),注意回车换行。

示例:

1.执行无返回值宏命令,弹出消息框 ​ 如,在页面上放一个TextBox控件,将其“TextMode”属性设置为“MultiLine”;再放一个普通的按钮“Button”,给其添加一个“onclick”事件,命名为“RunMacro”。在TextBox中输入宏命令后,点击按钮执行Js函数RunMacro(),弹出消息框 ​ 如,在TextBox中输入代码如下(注意:每句代码占一行): ​ Sub 宏1() ​ MsgBox "消息框" ​ End Sub JS代码如下:

<SCRIPT type="text/JavaScript">
    function RunMacro(){      
     document.getElementById("PageOfficeCtrl1").RunMacro("宏1",    document.getElementById("TextBox1").value);
    }
</SCRIPT>

​ 2.执行有返回值宏命令 ​ 如,在页面上放一个普通的按钮“Button”,给其添加一个“onclick”事件,命名为“RunMacro2”,点击按钮执行Js函数RunMacro2(). ​ JS代码如下: ​

<SCRIPT type="text/JavaScript">
   function RunMacro2(){
var value=document.getElementById("PageOfficeCtrl1").RunMacro("myFunc1", 'Function myFunc1() \r\n    myFunc1 = "123" \r\n  End Function');
    alert(value);
  }
</SCRIPT>

results matching ""

    No results matching ""