调用wps表格中的 内置函数获取相关数据 单元格获取相关数据 选中区域获取相关数据 不需要借助js宏代码
理论上Office Excel表格也可以使用(想用的可以实验测试一下)
使用的是Evaluate()方法
Run方法也可以得到同样的效果,但Run在运行函数时,我觉得它好像调用了两次函数代码
最好这样使用Run方法:Run("g","参数"),不要这样:Run("g('参数')")
(1)获取选中数据时 格式如: 1 或者 留空
(2)获取单元格数据时 格式如: a1:b5
(3)获取wps内置函数数据时 格式如: SUM(F2:F5)
// Quicker的C#代码
//.cs 文件类型,便于外部编辑时使用
// 引用必要的命名空间
using Excel = Microsoft.Office.Interop.Excel;
using Newtonsoft.Json;
// Quicker将会调用的函数。可以根据需要修改返回值类型。
public static void Exec(Quicker.Public.IStepContext context)
{
Excel.Application excelApp = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
var oldValue =(String)context.GetVarValue("g1"); // 读取动作里的变量值
object b1;//声明在判断外,在判断里用
if(oldValue=="1"){
//获取选中单元格的值,显示转化用【as】进行转换(excelApp.Selection as Excel.Range)
var ww=(Excel.Range)excelApp.Selection;
//好像不写Excel.Range不行,需要分开写,直接写好像excelApp.Selection.Value2获取不到数据
b1=ww.Value;
}else{
b1=excelApp.Evaluate(oldValue);
}
string aa=JsonConvert.SerializeObject(b1);
context.SetVarValue("g2", aa);
}