gpt4 book ai didi

javascript - 调用 Binding.getRange() 时出现 InvalidArgument 错误

转载 作者:行者123 更新时间:2023-11-30 20:31:36 24 4
gpt4 key购买 nike

当我在 Binding 上调用 getRange() 方法时对象,我收到以下错误:

code: "InvalidArgument",
errorLocation: "Binding.getRange",
message: "The argument is invalid or missing or has an incorrect format."

这看起来很荒谬,因为根据上面链接的 API,该方法没有任何参数。

即使是包含文档的 getRange() 示例代码的新项目也会对我造成此错误(当然是在我添加绑定(bind)之后):

Excel.run(function (ctx) { 
var binding = ctx.workbook.bindings.getItemAt(0);
var range = binding.getRange();
range.load('cellCount');
return ctx.sync().then(function() {
console.log(range.cellCount);
});
}).catch(function(error) {
console.log("Error: " + error);
if (error instanceof OfficeExtension.Error) {
console.log("Debug info: " + JSON.stringify(error.debugInfo));
}
});

这里是否发生了一些看似无关的问题?

我在 Windows 10 上运行 Office Pro Plus 2016,版本 1709(内部版本 8528.2139),它支持 ExcelApi 1.6。


更新

我在尝试使用 bindings 添加绑定(bind)时也看到此错误.add().addFromNamedItem() 像这样:

ctx.workbook.bindings.addFromNamedItem("Name", Office.CoercionType.Text, "Name");

产量:

code: "InvalidArgument",
errorLocation: "BindingCollection.addFromNamedItem",
message: "The argument is invalid or missing or has an incorrect format."

我的旧代码使用共享 API 方法 addFromNamedItemAsync()然而,成功地添加了一个没有问题的绑定(bind)。

我将继续进行试验,以确定这种情况是否发生在 ExcelApi 中的所有绑定(bind)相关方法或任何非绑定(bind)相关或共享 API 方法上。

最佳答案

您以错误的方式添加了绑定(bind)。首先,地址应包含工作表名称,因为绑定(bind)集合在工作簿上。所以,它不知道你指的是哪个范围。其次,您应该创建 Range 类型的绑定(bind)。最后,使用 getItemAt 是有限制的,因为位置可以根据删除操作而改变。 getItem with key 是获取绑定(bind)对象的更好方法。

...
ctx.workbook.bindings.add("Sheet1!D3", "Range", "Binding2");
await ctx.sync();
var binding = ctx.workbook.bindings.getItem("Binding2");
var range = binding.getRange();
range.load('cellCount');
return ctx.sync().then(function () {
console.log(range.cellCount);
});
...

关于javascript - 调用 Binding.getRange() 时出现 InvalidArgument 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50284582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com