我正在从事Word 2016插件项目,在使用Office UI结构库时遇到了一些困难
基本上,我希望在官方Office中添加外观和感觉,因此我认为Office UI Fabric是最好的选择,与Fabric javascript组件(如下拉菜单等)结合使用
我安装了这两个NuGet软件包:OfficeUIFabric 2.6.3和OfficeUIFabricJS 1.4.0,然后我使用这些css类向页面添加了一些组件:“ms Dropdown”、“ms ChoiceField”和一些图标类,如“
我想使用javascript office api将一个表对象嵌套在其他表单元中
我看到TableCell对象没有insertTable方法,因此无法通过单元格调用它。
表的方法insertTable只能接收“Before”和“After”位置,因此新位置将插入父表之前或之后
通过使用以下代码,我成功地通过HTML嵌套了表:
body.insertHtml('
<table border="1">
<tr>
<td>Cell1</td><td
我们正在使用JavaScript API开发Outlook插件。我们的外接程序在本机Outlook 2016中运行良好,在使用Chrome或其他web浏览器浏览时也能正常工作。
尝试在使用Internet Explorer浏览Outlook网站时启动加载项失败(我们在顶部收到“加载项错误”黄色通知)。
这并不是发生在我们所有的计算机上。目前,它一直在一台计算机上发生,上周又在另一台计算机上发生,但此后就停止了。只是想澄清一下——在大多数计算机上,使用IE,外接程序运行得很好
我试着精简我们的外接
我们已经构建了一个Excel任务窗格加载项,它主要用于表。在少数版本的Excel中,当我们尝试从工作簿加载表时会出现错误
从工作簿加载表的示例代码:
$scope.findTables=函数(){
让桌子;
Excel.run(函数(ctx){
设xlTables=ctx.workbook.tables;
xlTables.load([“count”,“items]”);
返回ctx.sync(xlTables)。然后返回函数(xlTables){
tables=新数组(xlTables.cou
标签: Office Js
office-addinsoutlook-web-addins
如何在Office Web插件中添加JQuery引用
我试过把它们放进去
在TaskPane.html中添加了引用
在Taskpane.html中添加了来自internet的直接引用
尝试在Taskpane.js中执行以下脚本
函数addJQuery()
{
var head=document.getElementsByTagName('head')[0];
var scriptjQuery=document.createElement('script');
scriptjQuery.type
我们无法确定一个明确的模式,但该方法不会随机返回邮件正文。我们在2020年1月8日后开始注意到这种行为。这种行为在以下内容中显示:
客户端:OWA和桌面(Windows Outlook 2016、2019和2013)
受影响的邮件不是系统邮件
编辑:添加了请求的代码段
item.body.getAsync(“html”,(mailBody)=>{
mail.body=someFunc(mailBody.value);
如果(!mailBody.value){
log(“获取文本内容”);
返
标签: Office Js
office-addinsoutlook-web-addinsoffice-app
我当前正在使用“Office.context.mailbox.displayNewAppointmentForm”从加载项命令打开新的约会表单
它工作得很好。但我想追踪一下新预约是否有任何变化。我尝试使用item.start.getAsync()和item.end.getAsync(),但它仍然无法获取时间,以便我可以比较是否有任何更改
还试图调查AppointmentTimeChanged事件。但还是没有运气
可以跟踪这些更改吗?我记得在这里的某个地方读到,为了获得.getAsync()的更新
标签: Office Js
office-addinsjavascript-api-for-office
您好,我正在开发word web插件。在这里,我需要获得word中每个单词的字体属性。
示例:-我需要在word级别获取font.streethrough属性。
到目前为止,我可以在段落级别上实现
Word.run(function (context) {
var range = context.document.body.paragraphs;
context.load(range, 'text,font');
retu
我正在尝试创建一个office应用程序,它将从定义的列表(因此用户不需要链接到数据源)中插入合并字段到模板。我有Word 2013,并复制了一个锅炉板示例,让我开始学习。我唯一的问题是无法在word环境中显示示例加载项。有人会看一下代码,看看它在我的环境中的显示是否有问题吗
Manifest.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/of
在我的外接程序中,我使用标准的asp.net OAuth 2实现从一个单独的子域提供身份验证。这是以前在Office 2016 for windows中使用的。它仍然可以在iPad、Mac和office online上使用。我已经在MSI版本和windows的点击运行(MSI:16.0.4456.1003,更正点击运行“1701”)中进行了测试
我试图得到一个更窄的复制,目前甚至像点击一个链接这样简单的事情在对话框中都不起作用
<!DOCTYPE html>
<html>
在测试我们的excel加载项时,我们遇到一位用户从他的Windows 10计算机上卸载了IE 11,安装了Microsoft Edge,工作正常。尝试加载任何加载项时,将显示以下错误:
有没有办法要求Excel使用edge webview来避免此问题
否则,是否有计划将webview与excel捆绑,使其不依赖于主机的浏览器?(我强烈建议使用chromium网络视图)
谢谢。我将把建议传达给团队——但目前,没有,PC版Office上的加载项将使用系统安装的Internet Explorer。和
共享api和word api的getSelectedDataAsync和getHtml分别无法在word的桌面应用程序中获取图像的base64编码?请建议如何在word的桌面应用程序中获取所选图像的base64编码。您可以使用的方法检索图像的base64编码版本
当然,您可以获得图像的base64,这是您需要做的。
这只是访问要选择的图像集合,只需在context.document.getSelection().inlinePictures.getFirst()上执行即可
异步函数getIma
我想使用OfficeJSAPI创建一个浮动命令栏,它尽可能少地占用Word插件的屏幕空间。如何从通过对话框API生成的对话框中删除标题栏?如果不可能,可以从任务窗格中删除标题栏。或者有没有其他方法可以在桌面上生成基本的浮动命令栏(例如,jquery对话框或Fabric UI组件) 当前没有更改或删除对话框标题的方法。(但这是个好主意。请在网站上提出。)
同时,您可以尝试结构模式或结构对话框组件:
顺便说一下,任务窗格本身可以浮动,您可以同时打开多个任务窗格,因此您可以使用一个浮动命令栏。但是
我正在尝试在Office JS加载项中执行一些工作
我已经看过脚本实验室和通过yeoman进行的侧加载
除了学习Office和Excel API本身,我还没有找到足够的示例代码来克服学习如何使用React/Typescript的困难
如果有人能够演示Script Lab List worksheets示例的简单扩展,将工作表列表放入Taskpanel加载项UI,而不是简单地将其转储到console.log中,那就太好了
还有一个后续问题:
我的目标是从GoogleSheets应用程序脚本中移植一
我正在使用Office JS为Outlook开发一个外接程序,想知道是否有任何方法可以将该外接程序定位在Outlook桌面客户端功能区的开头,而不是最末端?当前,所有外接程序都添加到功能区的末尾
是否有任何类似索引的属性可以将外接程序移动到功能区的开头?我已经在文档中搜索过了,没有指定与此相关的内容
提前谢谢 在Office JS外接程序中不可能这样做,只有在为Outlook开发COM外接程序时才有可能这样做。这是一个正确的答案。但是,如果有帮助的话,您可以编写清单,以便将按钮放在新选项卡中。(
我正在尝试为PowerPoint开发一个基本的Web插件。我想做的是从OfficeJSAPI中选择标题区域或文本区域,然后将一些文本粘贴到这些区域中。但是,我在Office JS API文档中找不到关于它的任何内容
在他们的教程中,Microsoft在幻灯片中包含了“Hello World”:
function insertText() {
Office.context.document.setSelectedDataAsync('Hello World!',
funct
标签: Office Js
outlook-web-addinsoutlook-web-app
约会可以保存在OWA中,如下所示。但它不会在OWA约会中作为发送或保存按钮单击事件自动关闭
Office.context.mailbox.item.saveAsync(function(result) {
});
在saveAsync回调函数中,可以调用API关闭窗口。
下面的示例将保存,保存成功后,关闭“撰写”窗口
Office.context.mailbox.item.saveAsync(function(result) {
if (result.status ===
我有一个Excel加载项和一个带有文本框的任务窗格。
我想在这个文本框中填入一个单元格地址,即=Sheet1!A1或=样品!B4…,并获取此单元格的值。
我用一个单元格地址填充文本框,我想用参考单元格的值来解这个地址。
我使用的javascript没有jquery。
如何从我的addind中执行此操作?如果我了解您的情况,我认为您只需要从文本框中读取地址。使用JavaScript字符串split()方法对其进行解析,以将工作表名称与网格地址分开。然后将工作表名称传递给以获取对工作表的引用。然后将
在Outlook加载项关闭之前是否有任何事件被触发?就像我们的OnReady一样,在上下文外接程序触发外接程序时会触发它。这在今天是不可能的。我们在用户语音页面上跟踪Outlook加载项功能请求。
看起来您想要的功能已被其他人请求。请投票表决。在我们进行规划过程时,会考虑用户语音功能请求。“在Outlook加载项关闭之前是否有任何事件触发”:您的意思是当我们关闭任务窗格时吗?否。当我们通过在加载项窗口外单击关闭上下文加载项窗口时触发的事件。
我想根据Excel文档的自定义属性控制Excel加载项(用TypeScript编写)UI的某些方面。为此,我需要在使用Office.onReady()方法时访问Excel.RequestContext。可能吗?如果没有,还有其他选择吗?你能把这两个电话连起来吗?即:
在TypeScript中:
(async () => {
await Office.onReady();
await Excel.run(async context => {
<..
我正在尝试将正在使用的microsoft word加载项,ABUformat。我曾经成功地将其加载到侧面。我遵循了所有必要的步骤,但最近,外接程序无法成功加载。它不断返回一条消息:“很抱歉,我们无法加载加载项。请确保您具有网络和/或Internet连接。一旦重新联机,请单击“重试”。因为我是从本地主机加载的,所以我不明白为什么要请求网络连接。事实上,将电脑连接到互联网并不能解决问题
有人帮我做这个,请已经做了好几个小时了。我正在使用VisualStudio代码进行开发
我在这里附上了它的截图:
我们在自定义函数中使用Date参数作为“any”类型(在typescript中),并在验证后将其作为字符串类型返回,该类型在Excel桌面版本中无法正常工作
但同样的逻辑在Excel在线版本中也能正常工作。请帮助在自定义函数中实现日期参数,以支持Excel Online和桌面版本。当前自定义函数中还不支持日期类型,但不确定为什么它在Excel Online中工作。你能提供你正在使用的样品吗?
在桌面客户端的“收件人/抄送”列表中添加电子邮件的顺序不正确。按顺序键入电子邮件会被正确拾取。但是,使用电子邮件副本粘贴到特定位置(如收件人列表中的位置1)并不会得到Office JS的尊重
场景:使用电子邮件id的复制粘贴在“收件人抄送”列表中添加电子邮件id。
1.添加电子邮件ID(abcd@microsoft.com)在位置1.(至:abcd@microsoft.com)
2.调用outlook插件。
3.阅读收件人/抄送列表中的电子邮件ID,确保其正常工作。
4.将emailId复制粘贴
标签: Office Js
office-addinsoutlook-web-addins
我开发了一个outlook插件,它使用OfficeJSAPI,并且希望在应用程序中实现OAuth
表示Outlook 2016(桌面版)支持要求集1.1、1.2、1.3和1.4,但在我的情况下,它保持沉默,甚至不会抛出错误。
我一边跑步一边工作
JavaScript运行时错误:无法获取未定义或空引用的属性“displayDialogAsync”
我正在使用Microsoft Office Professional Plus 2016
我为启动对话框编写的代码如下:
dialogTest() {
假设我的Outlook外接程序(使用Office.js)中有以下代码运行在约会的撰写表单上:
const item=Office.context.mailbox.item;
item.loadCustomPropertiesAsync((结果)=>{
const props=result.value;
const testProp=props.get(“my_prop”);
log(“自定义_PROP”,testProp);
道具设置(“我的道具”、“测试值”);
props.saveAsync
我们正在尝试安装一个外接程序,该外接程序利用VersionOverrides 1.1中引入的pinnable taskpane操作
错误为
无法安装此应用。清单文件不符合架构定义。命名空间“”中的元素“Action”在命名空间“”中具有无效的子元素“SupportSping…”
我们使用的Exchange server版本是Exchange 2016 CU1
以前有人遇到过这种情况吗
下面的清单样本
真的
根据新版本,必须将版本1.1添加到现有版本1.0中。您的示例清单完全缺少版本1.0覆盖
我正在开发一个Excel加载项,使用JavaScript API在Excel Office 365中构建加载项。[Mac]Office js版本-1.3
我想对工作表选项卡进行颜色编码。有什么办法可以做到这一点吗?标签颜色是Excel 1.7的一部分,它还没有在MacBook上发布(没有ETA)。它现在在Windows和Excel的测试阶段在线提供。您可以查看API。将在MAC上可用时更新此线程
我正在尝试使用这样的共享文件夹示例
但是有一个奇怪的错误
找不到
file://ff/?_host_Info=Excel$Win32$16.01$en US。
确保路径或Internet地址正确
Office版本1701(7066.2092)Desktop Excel32您应该使用web服务器(本地IIS实例或基于节点的开发人员托管服务器等),而不是从文件系统提供文件服务
您需要文件共享以在桌面上侧面加载清单,但实际文件应在https://localhost:XXXX
值得一提的是,如果您刚刚
我的外接程序有一个MessageComposeCommandSurface扩展点,当用户编写消息时,该扩展点会在功能区中添加一个按钮;对于读取模式,它会添加一个MessageReadCommandSurface
我希望该按钮在可见时始终处于启用状态(例如,当用户撰写新消息或回复现有消息时)
工作正常,但在打开模板时,我的外接程序会变灰/禁用(将邮件另存为模板并使用outlook打开.msg文件)
如果从撰写模式保存.msg,则加载项将变灰
如果从读取模式保存.msg,则禁用加载项
是否有人知道为
如何在Office Javascript中为Save事件编写事件处理程序?在Office Javascript API中,我似乎找不到任何关于保存事件前后的文档。“我的office web加载项”需要在保存文档后触发一些操作。这些事件似乎仍在开发中。
我们目前正在应用程序中实现自定义功能,无法使POST请求正常工作
我们已经尝试过的:
POST使用fetch(精确功能在最新的Chrome中工作)
POST使用axios,并向下传输(最新Chrome中的精确功能)
在后端expressjs服务器上添加和删除cors()中间件
我们是否缺少实施细节?我读了一些关于简单CORS的简要介绍,但想看看是否有一部分我们忘记了。您是在Excel for Windows上测试,还是在Excel Online(也称为Web上的Excel)上测试?当前,如果
在iframe中定义TaskPane将导致Officejs无法在Excel中工作。导致“Excel”的属性未定义。我想检查这个iframe是已知限制还是bug
TaskPane.html
HTML框架
很抱歉,您的浏览器不支持内嵌框架。
我已经联系过这个区域的负责人
iFrame仅在Excel Online上受支持。所以它不支持Windows和Mac
是您可以参考的文档我可以知道在taskpane中使用iframe的场景吗?我尝试了这种变通方法,它是有效的,但这种变通方法无法应用于生产。所以
我需要一种机制来存储字符串(激活密钥),并在用户每次运行外接程序或其功能时将其与字符串进行比较
下面是一个用例:开发一个office 365 excel加载项,用户可以通过侧窗格加载该加载项。我想提供一个免费版本和额外功能的高级版本。我没有找到任何方法来存储激活密钥。激活码是一个50位字符的密钥,仅对登录用户有效,其他用户不能使用或通过客户端访问
激活是一次性的,用户打开侧窗格并粘贴通过电子邮件收到的激活密钥,加载项将存储在其数据存储中,并使用每次来检查用户是否订阅了premium提供的prem
目前,我正在为Word和Outlook创建许多Office加载项。为了使代码易于管理,我使用了第三方js文件以及我自己的文件。不幸的是,这些额外文件不会被传输,并且在加载项启动时显示为未找到的文件错误
在尝试解决此问题时,我做错了什么,应该考虑什么?在考虑项目位置、web地址等后,调试时要求外部javascript文件(和其他html文件)与manifest.xml一起出现。任务平面在开发位置(src\taskpane)引用相对于自身的javascript文件,即
但是,要调试外接程序,cl
我正在使用office.js开发Excel应用程序外接程序。有人能告诉我在Excel应用程序中创建的绑定是持久的吗?如果我关闭文件并再次打开它,我是否仍将该绑定保存在Excel文件中?是的,该绑定将保留在文档中,并且可以跨不同会话、用户、平台和计算机访问。但是,它只能由创建它的外接程序引用(例如,Uber外接程序无法检索PayPal外接程序设置的绑定)
开发人员通常设计他们的外接程序,以便在页面加载时,外接程序使用数组检查已经存在的绑定列表,然后遍历数组。另一种常见模式是将绑定信息存储在Sett
我正在从事一个Office js项目,目前我正在将Html插入word文档中。Html可能包含各种段落和图像,也可能只包含文本。目前我知道您可以将段落或图像插入内容控件,但是我想知道是否可以将整个选择插入内容控件。我知道我可以这样做
var contentControl = paragraphs.items[0].insertContentControl();
然而,我想知道是否有可能将整个html插入到内容控件中,而不将其拆分为段落。有点像将Html作为对象插入一个内容控件
更新当前代码
我有一个Microsoft Excel Taskpane外接程序,它连接到我的云数据库并提取Excel工作表中的数据。该外接程序有一些过滤器,并根据这些输出生成。该插件在Office 2016客户端上运行良好,IE/Chrome作为默认浏览器。但在通过谷歌浏览器打开Office Online(报告预览版)时会出现错误。在IE上,它运行良好
以下是一篇文章:
错误生成函数:-
有什么想法/建议吗?问题出在哪里?我想澄清一下,“报告预览”是什么意思?报告预览是指每当我点击“确定”按钮生成报告时。对于
似乎context.document.body.text(或paragration.text或其他任何.text)总是具有不带换行符的文本值。获取带有换行符的文本的唯一可能的方法是解析ooxml或html。Ooxml解析是不可能的,因为对于office online来说,Ooxml是在服务器端计算的,通常需要3秒钟才能完成。Html检索也很慢,一页文件最多需要500毫秒的事件。奇怪的是,您可以插入包含换行符(/n)的文本,但无法检索回此文本
所以问题是:是否有可能通过Word api获取带换行符
我正在使用Excel for mac build 15.37(170712)。我正在开发一个office插件,需要经常插入和删除范围。当我在下面的示例代码中调用run函数时,我看到excelformac会自动上下滚动。这似乎是一种特定于平台的行为。这是因为我在windows上运行时没有看到这种行为。此外,当我使用VBA运行相同的算法时,性能相当慢。当我在Excel中添加和删除范围时,是否有可能在mac中避免这种行为并提高性能
var dispInfo =
[["9", "0",
我正在尝试调试Office加载项,但遇到问题。我在一个陌生的领域,作为一个VBA开发人员。我有一个非常小的Excel外接程序,并尝试在本地进行调试。我使用的是Visual Studio 2019,拥有Office 365(每月频道,2002年版)。从一个项目模板开始,我修改了它以供我使用。不确定我做错了什么,我已经阅读了很多关于它的文档
目前我的假设是我的清单配置不正确。当我从VS调试任务窗格加载时,我在任务窗格中得到以下文本:
加载项错误
此加载项不再可用:已插入加载项
在开发期间,仅在从Vi
在共享运行时运行时,Microsoft文档声明“您的自定义函数将获得完全的CORS支持”。看见
和
但是,我无法从共享运行时中运行的自定义函数发送跨源POST请求。它总是抛出网络请求失败。似乎只适用于相同的来源或简单的获取方式。
下面是我尝试使用fetch(在自定义函数之外工作)的示例代码
还尝试使用XMLHttpRequest(),但在status=0时总是失败。如果任何人能够按照文档中的说明从自定义函数发出完整的CORS POST请求,请分享一个工作示例
fetch('example.
标签: Office Js
office-addinsoutlook-web-addins
从AppSource安装的某些Outlook加载项可以将其操作按钮显示为主要操作。如何做到这一点?对于未通过AppSource分发的加载项,是否也可以这样做
“主要操作”指的是一个操作按钮,它不会隐藏在“更多操作”菜单中,并且在阅读或撰写电子邮件时立即可用。这些幻灯片演示了以下想法:
显示了“上下文菜单命令”示例。我找过了,但没找到。了解它的示例代码将非常好。此外,一系列平台支持这一点。谢谢
这是您要查找的示例:。它显示了如何让外接程序使用上下文命令(出现在桌面版Office的右键单击菜单上)
相关的xml元素是
-Michael Saunders,办公室插件的PM
在恶劣的网络条件下测试Office.js加载项时,我们遇到了一个问题。即使在加载脚本之前,也会引发以下错误:
Uncaught Office.js尚未完全加载。请稍后再试,或确保在Office.initialize函数中添加初始化代码
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<title>T
我正在开发一个Outlook Web加载项,目前卡在manifest.xml上。我可以上传清单而没有错误,但是ExecuteFunction元素不知何故被忽略了
当我删除及其子元素时,ExecuteFunction正在工作,但这不是选项,因为我需要它来获取OAuth令牌
这里是我们设法使WebApplicationInfo工作的地方
所以我的问题是:是否可以在同一个清单中包含WebApplicationInfo和ExecuteFunction
清单如下所示:
c64ded7d-29e6-408
是否可以将附件或电子邮件拖动到Outlook Web加载项。
外接程序可用于Outlook 365(Web)或主客户端
我的假设是否定的——因为这是一个沙盒边界,但我听说有人在系统托盘中运行应用程序来拦截鼠标拖动事件
这是否可行?这种方法是否存在安全风险
多谢各位
Rich系统托盘拦截不是一个可行的解决方案,这不仅是因为安全问题,也是因为部署原因。外接程序功能和入口点应完全由其清单文件描述,并且不应要求用户安装任何后台进程
至于一般的拖放支持,目前拖放到沙箱不是产品的一部分。但是,我们会在页面上
我们使用单个api调用实现了自定义函数,并且工作正常。还尝试在单个api调用中作为批处理实现,以绑定选定行。你能分享一些有用的例子吗
谢谢
穆鲁加南特谢谢。建议的方法是将项目/参数排入全局数组。每次有新的请求进入时,计时器都会被设置为持续执行,直到没有更多的项目剩余。您需要通过在functions.json中设置“sync:false”将函数声明为异步函数。为您检查一个示例,本文有一个关于保存状态的示例
正如Keyur所说,一个全局队列和某种计时器来调度该队列将是您的最佳选择
有关示例,请参见
我正在试着做一张地图。理想情况下,我希望能够在任何时候向用户显示多个地图,每个地图都有自己的数据集。理想情况下,我希望用户能够永久定义特定加载项实例的数据位置
我该怎么做呢?是否为内容外接程序分配了一个始终不变的ID?或者一个内容加载项实例是否有一些“数据”可以从OfficeJS中访问?如果您谈论的是用户点击一些按钮来设置每个文档的设置,这是可能的
是否为内容外接程序分配了一个始终为
常数或者一个内容外接程序实例是否有一些可以
是否可以从OfficeJS内部访问
这是外接程序的ID。但这不是您可
我正在为Word开发Office插件,因此我正在使用OfficeJs
我有这段代码,如果Word文档处于只读模式,它应该执行一些东西
Word.run(function (context) {
var prop = context.document.properties;
prop.load("*");
return context.sync().then(function () {
if (prop.security && prop.secur
我们正在创建一个基于go/react的Web应用程序,我们将使用excel任务窗格指向该应用程序addin。此webapp需要重定向到另一个页面才能登录到该应用程序,然后该应用程序将重定向回原始页面
当我们创建清单文件并将其(通过共享文件夹)添加到桌面版excel时,应用程序会重定向到登录页面,我可以输入我的凭据,然后它会重定向回并完全加载。这就是我们想要的体验
但是,当我们使用基于web的Excel版本,并选择使用同一清单文件“上载我的加载项”时,它会重定向到登录页面,但屏幕被禁用,最终失败。
1 2 3 4 5 6 ...
下一页 最后一页 共 14 页