问题标签 [apps-for-office]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
745 浏览

javascript - 在 Excel.run 中为 Office 应用重用范围对象

我是 APPS for OFFICE 的新手

我正在尝试一个简单的代码来验证 Excel 数据。因此,我不是一次又一次地将东西嵌套在 ctx.sync() 中,而是编写如下代码:-

可以看出,我需要一次又一次地读取范围对象。所以我每次都使用具有不同地址的范围对象并首先调用“load()”然后调用“ctx.sync()”。

如果我调试缓慢,一切正常,但在运行应用程序时,我时不时会出现频繁错误:-

属性“文本”不可用。在读取属性值之前,调用包含对象的 load 方法,并在关联的请求上下文中调用“context.sync()”。

请指导我如何处理这个问题?另外,我的方法正确吗?

0 投票
1 回答
279 浏览

selenium - 如何实施 UI 测试以持续交付 Office 加载项(Office 应用程序)

我们正在开发 Office 加载项(办公应用程序),我们希望使用 VSTS 自动化测试以实现持续交付。

因为加载项是 Web 应用程序,所以我想使用 Selenium 之类的工具,但这似乎不起作用,因为该应用程序不在浏览器中(而是在 Word 中使用 IE 引擎)

我尝试使用 Visual Studio 中的 Coded UI 测试,但它们无法正常运行。它似乎可以处理一些基本的 UI 事件,但即使是简单的输入文本也会导致不可预知的行为。(缺少字符,点击错误的项目)。

我希望其他人对如何做到这一点有一些经验?

非常感谢。

0 投票
3 回答
2386 浏览

ms-word - 如何在不同的 Word.run 上下文中使用范围?

我已经为 word 创建了一个任务窗格插件,它运行搜索并将有关结果的信息作为列表显示给用户。当用户单击列表中的某个项目时,我想选择 word 中的范围以向用户显示该项目的位置。然后插件将允许用户在该范围内执行其他任务,例如更改字体颜色。

我可以使用以下函数运行搜索并获取显示范围:

但是我很难选择用户点击的范围。我尝试使用范围上下文:

或者在新的 Word.run 上下文中使用范围:

我遇到了一种潜在的方法,该方法涉及为每个搜索结果创建一个内容控件,然后selectRange在新上下文中重新加载函数中的所有内容控件并找到匹配的控件,但是当我已经有了范围时,这似乎非常低效。

在不同的 Word.run 上下文中重用范围的最佳方法是什么?

0 投票
2 回答
152 浏览

javascript - Office365 插件 - 如何在插件 Windows 之间进行通信

我正在为 PowerPoint 开发 Office365 Javascript 内容插件,但在消息传递方面遇到了问题。

与 Word 或 Excel 不同,可能会在一个文档中使用多个加载项。例如,幻灯片 3 上的一张,幻灯片 5 上的一张。

我有 2 个不能正常工作的场景。

  • 使用 Office365 网络客户端(在本机模式下工作正常) - 如果在幻灯片模式中更改了某些内容,则在设计器模式下返回该幻灯片时不会自动反映这一点。
  • Webclient 和本机 - 如果用户在一张幻灯片上注销,我无法让其他幻灯片上的加载项也自动注销。

到目前为止我已经尝试过:

  • 浏览了Office.js文件和文档

  • 调查了底层技术,因此期望一些标准的 html 技术可以工作。

  • 尝试了 postMessage 和使用存储事件(直接在 IE 中有效,但在 PowerPoint 中无效)。

我可以实现心跳或 websockets,但宁愿避免不必要地访问服务器,并且希望使事情尽可能简单。或者,我可以在 localstorage 中放一些东西并使用 setInterval 来检查它,但这会增加不必要的后台工作并减慢应用程序的速度。

有没有解决上述问题的“好”方法,或者 setInterval/localstorage 检查是目前唯一简单的解决方案?

0 投票
1 回答
48 浏览

outlook - 我应该使用哪个版本的 Office Apps 加载项库?

我已经看过很多示例并且使用了1.1 版本很长一段时间,但是在新文档中他们突然建议包括第1 版本,如下所示:

0 投票
1 回答
452 浏览

ms-word - javascript api这个词中应该如何使用range.expandTo

我为运行搜索的单词创建了一个任务窗格插件,并将选择两个搜索结果之间的文本。直到几天前,以下代码才成功运行:

但是现在抛出以下错误:

我正在使用这里推荐的 PreviewCDN https://github.com/OfficeDev/office-js-docs/tree/WordJs_1.3_Openspec 并且正在运行 Office 版本 16.0.7167.2040

这是使用该range.expandTo方法的正确方法吗?或者 api 有什么变化?

0 投票
1 回答
96 浏览

office365 - 在 Office.js 任务窗格中确定用户是 Windows Live 还是 Office 365 用户?

鉴于 Live 和 O365 的 OAuth URL 不同**(希望我首先对那个 URL 是正确的),有没有办法从 Office 任务窗格加载项中了解当前用户是否正在使用 Live 运行ID 还是 Office 365 ID?

我们目前求助于显示两个按钮供用户登录:一个用于“使用 Windows Live 登录”,另一个用于“使用 Office 365 登录”,它们会启动相应的 OAuth 步骤。我们想让它只有一个登录按钮,并且它会针对当前登录的用户类型进行预设。

0 投票
1 回答
194 浏览

office-addins - 在 office.js 1.0 或 1.1 中是否支持/提供插件(excel 内容插件)调整大小事件?

我正在寻找添加调整大小事件,但不是运气。

office.js 1.0 或 1.1 中是否支持/提供添加(excel 内容加载项)调整大小事件?

0 投票
1 回答
76 浏览

office-addins - Excel add in (Content app) 如何去掉右上角的箭头

Excel 添加(内容应用程序)如何摆脱右上角的箭头。
在此处输入图像描述 此元素(div)由应用程序开发模板自动创建。

0 投票
1 回答
1201 浏览

office365 - Excel JS 加载项适用于 Excel,但不适用于 Excel Online

我使用 WoodGrove 费用趋势示例构建了一个 Excel JS 任务窗格加载项,并验证它在我的机器上的 Excel 2016 中正确运行。但是,当我转到 Excel Online 并尝试添加加载项(通过从我的机器上传清单)时,我得到“您的加载项清单无效”。

我不确定在我的机器上有效但在 Excel Online 中无效的清单是什么。

有人遇到过这种情况或有任何诊断想法吗?这有点类似于将我的头撞到墙上。