JavaScript API不适用于Excel 2013吗?

柔音

我刚刚收到了我提交的一个加载项的变更建议报告。它说Your add-in is not working in the Excel 2013 client on Windows 7 with Internet Explorer 11.

我一直在Excel 2016和中测试我的加载项Excel Online因此,我刚刚安装了Excel 2013版本15.0.4841.1000(包括SP1的version ),确实该加载项不起作用。但是似乎没有什么工作...

例如,下面的示例函数将haha在电池A1之下Excel Online,反之,它没有任何东西Excel 2013

function test () {
    Excel.run(function (ctx) {
        var range = ctx.workbook.worksheets.getItem("Sheet1").getRange("A1");
        range.values = [["haha"]];
        return ctx.sync();
    });
}

有人知道JavaScript API是否支持Excel 2013吗?如果没有,很多专业人士将无法使用加载项,因为他们仍在使用Excel 2013...

PS:我看到有很多的加载项在办公室商店需要Excel 2013 or laterExcel 2013 Service Pack 1 or later如果JavaScript API不支持Excel 2013,那么如何开发这些加载项(例如Stock Connector)?

编辑1:在清单XML中:

<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">

在我的中Home.html,我有:

<script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>

编辑2:我猜以下设置等效于该加载项不应该在中使用Excel 2013

<Hosts>
  <Host Name="Workbook" />
</Hosts>
<Requirements>
  <Sets>
    <Set Name="ExcelApi" MinVersion="1.2"/>
  </Sets>
</Requirements>
<DefaultSettings>
  ...
</DefaultSettings>
迈克尔·兹拉特科夫斯基-微软

使用Office.js API时,您会看到每个方法都带有一个API集名称。例如:

在此处输入图片说明

这些API集对应于外接程序将使用的Office版本。需求集的列表及其支持的位置可以在http://dev.office.com/reference/add-ins/office-add-in-requirement-sets中找到

任何新的Office 2016特定于主机的API集(ExcelApi,WordApi等)在Excel 2016+(以及Office Online和Mac / iOS等效版本)上受支持。API版本号(1.1vs. 1.2vs. 1.3)对应于API的更新,这些更新是在Office 2016的RTM版本(出厂时提供1.1)中添加的。那些具有Office 365订阅(家庭或企业)的客户可以使用这些更新。购买Office 2016磁盘/ MSI产品的客户将仅具有原始1.1API。

您可以通过两种方式使用需求集。如果您的加载项100%取决于特定的API集,则应在清单文件中列出它。这样,对于不支持该特定API集的Office版本,该加载项甚至不会出现在“插入/管理加载项”对话框中。

另一方面,如果您仅使用集合中的几个API,并且可以不这样做(即使这会降低体验),则可以执行“点亮方案”。也就是说,你将列出可能的最低版本,您做的必要性,然后使用运行时检查,以检测特定的API集是否可用。

具体示例:假设您有一个Excel加载项,它可以创建一个新工作表并将数据输出到表中。这需要ExcelApi 1.1版本或更高版本。理想情况下,您希望能够设置列宽,但是range.format.columnWidth仅在中可用ExcelApi 1.2您不想阻止客户使用旧版本的外接程序-毕竟,即使不是最佳状态,您的大部分功能仍可以使用-但您确实想使用新版本蜜蜂。在这种情况下,您应该ExcelApi 1.1在清单中指定,然后在JavaScript中进行运行时检查,以确定是否可以运行range.format.columnWidth代码。IE:

if (Office.context.requirements.isSetSupported("ExcelApi", 1.2 )
{
   range.format.columnWidth = 25;
}

有关相关答案,请参阅获取环境的简洁方法(例如Office版本)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JavaScript API不适用于Excel 2013吗?

来自分类Dev

jQuery API不适用于JavaScript

来自分类Dev

导出到Excel不适用于Excel 2013

来自分类Dev

ESRI javascript API TOC不适用于TitleedMapService

来自分类Dev

Javascript onclick不适用于动态生成的rails元素吗?

来自分类Dev

JavaScript getElementById不适用于表格

来自分类Dev

条件不适用于javascript

来自分类Dev

呼叫方法不适用于javascript

来自分类Dev

javascript date()不适用于IE

来自分类Dev

svg大小不适用于javascript

来自分类Dev

CSS过渡不适用于Javascript

来自分类Dev

Javascript延迟不适用于FilePond

来自分类Dev

线性渐变不适用于JavaScript

来自分类Dev

JavaScript函数不适用于整数

来自分类Dev

可见不适用于javascript

来自分类Dev

Javascript forEach不适用于json

来自分类Dev

Webpart javascript不适用于数组

来自分类Dev

jQuery代码不适用于javascript

来自分类Dev

自动点击不适用于javascript

来自分类Dev

Apply 不适用于 fromCharCode - javascript

来自分类Dev

AppendChild 不适用于 textcontent (javascript)

来自分类Dev

SFINAE不适用于这里吗?

来自分类Dev

查找不适用于递归吗?

来自分类Dev

滚动不适用于css()吗?

来自分类Dev

设置不适用于NSManagedObject吗?

来自分类Dev

简单的JavaScript正则表达式替换不适用于带有方括号的Token吗?

来自分类Dev

Facebook Javascript API:“ / me / albums”不适用于其他用户

来自分类Dev

我的 javascript api 不适用于“Access-Control-Allow-Origin' missing”错误

来自分类Dev

如何确定Office版本号的JavaScript API(适用于Office 2013项目的应用)