aardio 文档
aardio 范例: VBA
//Excel
import console.int;
import com.excel;
//打开或创建 Excel 文件,xlsm 格式支持宏( VBA / JSA )。
var xl = com.excel("/vba.xlsm");
//自由调用 VBA / JSA 函数,不需要确认启用宏。
var data = xl.vba.GetSheetData();//先用 VBA 编写函数,宏管理器能看到函数名。
/*
自动支持 VBA 数组,不需要任何其他封装。
数组是值类型,操作数组不用再返回 VBA 进程,相对来说简单高效。
*/
console.dumpJson(data);
/*
VBA 也可以自由调用 aardio 对象。
所有 aardio 对象都支持 VBA 迭代For Each … Next 语句。
在 VBA 可以调用 aardio 对象的属性、函数。
但 VBA 动态读写属性要这样写:
CallByName (aardioObject, "读取属性名", vbGet)
CallByName aardioObject, "写入属性名", VbSet, "属性值"
*/
xl.vba.CallAnything({
//在 Excel 或 WPS 表格中按 ALT + F11 打开代码窗口。
//VBA 编辑器会自动将某些函数名转为大写,aardio 是区分大小写的。
Log = function(str){
console.log("VBA调用任意 aardio 函数,参数:",str);
//owner 表示当前拥有 Log 函数的对象自身
console.log(owner.Name)
};
Name = "aardio";
});
/*
VBA,JSA 源码可打开 /vba.xlsm 查看代码。
JSA 调用 aardio 对象的成员函数要这样写:
aardioObject.Invoke("Log","这是来自 JSA 的参数。");
而 VBA 可以直接写 aardioObject.Log("这是来自 JSA 的参数。")
JSA 里读写 aardio 对象属性
aardioObject.Invoke_Get("属性名");
aardioObject.Invoke_Set("属性名","属性值");
另外 aardio 里可以用
web.json.stringify( value ) 将对象转换为 JSON。
也可以用 web.json.parse( json ) 方便地解析 JSON 为对象。
而 JS 使用 JSON.stringify( value ) 生成 JSON。
使用 JSON.parse 解析 JSON。
使用 JSON 交互数据也是很方便的。
在 aardio 里调用 JSA 代码中可以可以插入 debugger; 语句。
WPS 遇到 debugger; 会自动跳出调试工具。
*/
Markdown 格式