Tag: office js

OfficeJS Excel 2013 – 在IE保护模式下loginstream程

我只是想看看是否有人遇到以下情况,我们正面临着几个问题。 场景: – 用户点击一个button,在插件web应用程序,popup打开一个预定义的loginstream程,一旦login完成,令牌返回到插件webapp和剩余的应用程序stream程继续。 我们面临的问题是…如果我们不设置/在保护模式下使用IE浏览器,应用程序似乎并没有把控制权交还给插件。 没有令牌,我们不能让用户继续。 所以,如果我们在保护模式下使用IE浏览器,我们面临的问题如下1.用UI API调用Web UI应用程序似乎不能正常工作。 特别是绑定和事件。 2.从networking用户界面到rest服务的内部呼叫无法正常工作。 只是想知道你们是否有任何意见。

如何使用office.js Excel Addin中的行号和列号获取完整的Excel范围地址?

下一个例子给我“Sheet1!C3” : Excel.run(function (ctx) { var sheetName = "Sheet1"; var worksheet = ctx.workbook.worksheets.getItem(sheetName); var cell = worksheet.getCell(3,3); cell.load('address'); return ctx.sync().then(function() { console.log(cell.address); }); }).catch(function(error) { console.log("Error: " + error); if (error instanceof OfficeExtension.Error) { console.log("Debug info: " + JSON.stringify(error.debugInfo)); } }); 可以使用起始和结束行号和列号得到完整地址,如“Sheet1!C3:E4”?

无法获得定义名称的范围

Excel 2016(Office 365)32位,16.0.6965.2115,Visual Studio 14.0.25425.01更新3我很确定下面的声明用于工作,但现在它不再工作: var range = ctx.workbook.names.getItem("Countries").getRange(); 我收到一个错误,指出不支持getRange方法,但应该按照文档中的说明进行支持。 我在做什么错了? —编辑:这是我正在使用的代码— function paintRange() { Excel.run(function (ctx) { var range = ctx.workbook.names.getItem("Countries").getRange(); range.format.fill = "green"; return ctx.sync(); }).catch(function (error) { app.showNotification("Error", error); }) } paintRange附加到一个button。 有一个名为“国家”的全球范围定义名称。 除了我提到的那个,我没有任何关于错误的细节,我也尝试打开快速查看窗口以获得更多的线索。

Excel Javascript API – 添加具有类别轴值的图表

我正在添加\通过以下JS调用插入折线图到Excel中: var newSheet = ctx.workbook.worksheets.add(); newSheet.activate(); // populate grid // category (axis) var cell = newSheet.getCell(0, 0) … // values (axis) cell = newSheet.getCell(0, 1) … var range = newSheet.getUsedRange(); newSheet.charts.add("Line", range); 我的“范围”数据如下所示: 2012 10 2013 20 2014 30 2015 40 2016 50 我遇到的问题是每个列被视为一个单独的系列,并在图表中呈现2行。 我只想要一条线和分类轴来包含年份。 有谁知道这是可能的吗? 截图:

多个Office.js加上`哟办公室'?

我使用这些步骤成功创build了一个Office.js插件。 在Mac Sierra上,Excel 2016版本15.31(170216) 然后我使用相同的方法创build另一个插件,但给了它不同的名称和文件夹。 也给了它一个新的GUID。 我sideloading ,使用wef文件夹。 现在,当我打开Excel,我看到在插入function区中列出的唯一的插件,但他们的任务窗格都显示相同的名称(第一个插件)。 怎么修? 此外,似乎即使我停止了第一个Web服务器,我仍然看到插入function区上列出的插件。 怎么修? QuarterlySalesReport清单: <?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"> <!– Begin Basic Settings: Add-in metadata, used for all versions of Office unless override provided. –> <!– IMPORTANT! Id must be unique for your add-in, if you reuse this manifest ensure that you […]

Office.js:如何从一个集合派生的项目中得到一个属性(例如,一个NamedItemCollection中的所有范围的“地址”属性)

我有一个2000命名范围的工作簿。 我想获得范围属性,如地址,columnCount,rowCount和可能的单元格值对象。 我可以得到这些与2000服务器调用。 这在Excel中是可以的,但在Excel Online(2000服务器往返)中不可以。 我只想用几个批处理操作来获取像'address'这样的属性? 我已经尝试了像下面这样的各种组合(不起作用),但不知道如何。 Excel.run(function (ctx) { var nameditems = ctx.workbook.names; nameditems.load('items'); return ctx.sync().then(function () { var nameditemsProperties = nameditems.load('address, rowCount'); return ctx.sync().then(function () { for (var i = 0; i < nameditemsProperties.items.length; i++) { app.showNotification('address: ' + nameditemsProperties.getItem[i].address); } }); }) }).catch(function (error) { handleErrors(error); }); 我可以(我怎样才能)像“地址”在一个数组中只有几个批处理操作? 我正在使用Excel API 1.3。

(Excel加载项)将大数字设置为Range.value时,电子表格中的结果数字是不同的

当设置一个大数值作为范围(单元格)的值时,写入电子表格的数字与原始数字不同。 例如 如果我设置了42300000000,那么excel中的数字变成-649672960。 小数字不会发生这种情况 我使用Visual Studio的基本项目样本进行了testing。 只需将原始的loadSampleData函数replace为: function loadSampleData() { var values = [ [4230, 42300, 423000], [4230000, 42300000, 423000000], [4230000000, 42300000000, 423000000000] ]; // Run a batch operation against the Excel object model Excel.run(function (ctx) { // Create a proxy object for the active sheet var sheet = ctx.workbook.worksheets.getActiveWorksheet(); // Queue a command to […]

如果我们在工作表名称中有一个连字符( – ),则Office.js Excel加载项命名绑定不起作用

我正在使用这个下面的代码绑定到Excel中使用Excel办公室插件的列。 var myBindings = Office.context.document.bindings; var myAddress = "Sheet1!A1:B10"; myBindings.addFromNamedItemAsync(myAddress, "matrix", {id:"myBind"}, function(result){}); 这工作正常,但如果工作表名称包含一个hypen( – )相同的代码失败,消息“该命名的项目不存在”。 例如下面的代码失败。 var myBindings = Office.context.document.bindings; var myAddress = "Sheet1-1!A1:B10"; myBindings.addFromNamedItemAsync(myAddress, "matrix", {id:"myBind"}, function(result){}); 如果这是平台中的错误,请让我来,或者我在这里做错了。

如何使用Excel.run()从函数返回值?

我怎样才能从这个函数返回一个值。 我不得不写一个callback作为解决方法。 我想能够编写实用函数,如下面将使用Excel.run()并返回所需的值作为函数输出。 function currentSheetName() { //How to return a value from this function. For eg: activeWorksheet.name Excel.run(function (ctx) { var activeWorksheet = ctx.workbook.worksheets.getActiveWorksheet(); activeWorksheet.load("name"); return ctx.sync().then(function(){ callback(activeWorksheet.name) }); }).then(function() { }).catch(function() { }); };

通过范围区域循环

在Excel中,进行多选,即: A1:A3和D1:F4 。 在VBA中,我可以使用以下方法轻松遍历范围的区域: Sub Main() Dim i As Long For i = 1 To Selection.Areas.Count Debug.Print Selection.Areas(i).Address Next i End Sub 这是一个非常重要的Range属性。 我怎样才能在Excel JavaScript API中实现这一点?