使用office.js进行office加载项开发时,无法在word文档的书签中插入文本

2024-04-11

我正在开发一个 word 插件。主要任务是使用数据库中的数据填充文档中的书签。在 office.js 中,我发现书签可以作为范围对象进行访问,并且我正在使用“ rangeObject.insertText(text, insertLocation)" 将数据插入书签的方法。但问题是第二个参数 insertLocation 值可以是 'Replace'、'Start'、'End'、'Before' 或 'After'。这基本上是追加书签之前或之后的数据。像这样 -图片 1(使用 insertLocation 值“End”的当前结果) https://i.stack.imgur.com/l1k9P.jpg

使用 insertLocation 值“替换”它会替换整个书签并实际上从文档中删除书签!所以我想要的就是在书签中插入一个文本,如下所示-图2(期望的结果) https://i.stack.imgur.com/d79hO.jpg

注意:我稍后必须读取这些书签值。因此无法删除任何书签。并且我正在使用 Office.js api 的 1.4 beta 版本。

这是我的代码-

        Word.run(function (context) {

            var doc = context.document;

            //get the bookmark range by its name
            var bookmarkRange = doc.getBookmarkRangeOrNullObject("cscasenumber01");

            //insert a data
            bookmarkRange.insertText("test data",'end');


            // Synchronize the document state by executing the queued commands, 
            return context.sync();

        }).catch(errorHandler);

在审查此问题后,我们发现“替换”行为是设计使然。

事实上,如果您直接使用 UI 替换包含书签的范围的文本,则书签将被删除。如果您使用宏/VBA 以编程方式执行此操作,情况也是如此。

好消息是,替换文本后,选择将是替换的文本范围,因此如果需要,您可以在替换操作后重新创建书签。

请注意,这只发生在替换时。在开始或结束处插入将保留书签。

最后,书签 API 仍处于预览阶段,发布日期未知。

--------- 保留预览答案的一些上下文 ---------

非常感谢您使用我们的预览版 API。我只是重现这种行为,这是设计使然。是的,API 上的 before、start、end、after 的语义非常清晰。

  1. “开始”和“结束”插入位置意味着插入将在调用范围的边界内,在这种情况下意味着如果您使用其中任何一个,则书签需要扩展到插入的任何内容。
  2. 另一方面,“之前”/“之后”意味着插入到范围边界之外。
  3. 最后,replace 应该用作为参数提供的任何文本替换书签,书签将被删除(与直接在 UI 中并使用 VBA 以编程方式执行此操作一致)。

谢谢

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用office.js进行office加载项开发时,无法在word文档的书签中插入文本 的相关文章

  • 使用 graph api 获取用户所属的所有租户

    我有一个应用程序 它使用 AUTH v2 身份验证提供程序和公共租户 login microsoftonline com common v2 0 进行身份验证 现在 由于我的用户可以属于任何 AAD 租户 并且我希望我的用户能够选择他们正在
  • 计算公式的子公式

    选择有公式的单元格后 我们可以在Excel公式栏中选择其公式的一部分并进行计算 按F9 我需要通过 JavaScript API 重现子公式的计算 例如 假设 Cell 的值A1 B1 C1分别是1 2 3 和细胞D1包含一个公式 A1 B
  • Zapier:修改 webhook 侦听器 HTTP 响应?

    某些 API 需要 Webhook 侦听器响应中的附加信息 例如 我正在尝试订阅 Outlook com 的推送通知服务 该服务描述了以下流程 Outlook 通知服务尝试使用侦听器服务验证通知 URL 它在验证请求中包含验证令牌 如果侦听
  • 我们如何强制将邮箱项目持久保存到 EWS?

    Note 这一特殊问题对我们的客户产生重大影响 这会转化为巨大的业务影响 对收入产生直接影响 TL DR 当用户在撰写电子邮件草稿时与我们的加载项交互时 我们的 Outlook Office 加载项如何最大限度地缩短电子邮件草稿发送之前所需
  • Office-js Excel:获取新保存文件的文件名

    如何获取新保存文件的文件名 通常 我可以使用以下方式获取文件名 Office context document url 然而 当用户打开一个新工作簿时 它实际上没有文件名 而且奇怪的是 即使保存后 这行代码也不起作用 相反 他们必须保存它
  • Word JS API:扩展范围

    在努力解答的同时这个问题 https stackoverflow com a 51159442 3077495我真的希望能够将范围扩展特定数量的字符 在 COM API 中我会使用Range MoveEnd 是否有我在 JS API 中没有
  • 如何获取邮件联系人所属的所有组?

    此代码将查找特定电子邮件帐户或mail user帐户所属 get group where object FilterScript Members contains user 但是 在 O365 中您可以拥有mail contacts谁不是用
  • PowerPoint 命令,例如在 Office javascript API 上插入幻灯片或应用等效主题

    我正在开发一个 PowerPoint 加载项 将来它将在 Office Store 中发布 但它是VSTO项目 C 和winforms 无法发布 根据我的搜索 它一定是 Office Web Add in 项目 清单 xml 和网页 我正在
  • 任务执行期间在任务窗格上滚动时工作表冻结

    我们正在使用office js API 开发一个office Addin 反复出现的问题损害了我们在店里的声誉 此问题是 Excel 插件 office js 中的工作表在滚动后被冻结 我编写了一个简单的脚本实验室片段代码 它重现了工作表冻
  • 已取消的邮件图标显示“不支持”

    发送到 Outlook 的已取消邀请电子邮件包含 不支持 附件 这是我用来取消电子邮件邀请的 ics 有人可以帮助我理解我在这里缺少什么吗 PS Gmail 能够解析此 ics 并从日历中删除该事件 BEGIN VCALENDAR VERS
  • Outlook 加载项,无法读取未定义的属性“BeginRequestEventArgs”

    我使用 Visual Studio 开发了 Outlook 插件 我的插件有一个按钮 用于填充会议邀请正文中的详细信息并添加所需的与会者 这在 99 的情况下都有效 但是 时不时地它会给我下面的 JavaScript 错误 Uncaught
  • 获取共享邮箱中的成员 office 365

    大家好 我在使用统一 API 获取共享邮箱 Office 365 中的访问列表成员时遇到问题 我正在使用这个端点 APIhttps graph microsoft com https graph microsoft com 我希望有人能帮助
  • 使用 C# 使用应用程序密码登录 Office 365 SMTP

    在我们的 Office 365 公司帐户中实施两步身份验证之前 我的 C WPF 程序已成功进行身份验证并发送邮件 我使用了 SmtpClient 库 但现在我必须找到另一个解决方案 因为它不再起作用 我找不到任何使用 O365 应用程序密
  • Outlook 插件的图标未更新

    我的 Outlook 加载项中有一个按钮图标 例如 https xyz com img1 指向 img1 现在 如果我在部署加载项后更新图像 则更新的图像不会加载到功能区中 更新后 https xyz com img1 指向 img2 理想
  • 使用 login.microsoft.com 的 OAuth 返回不一致的令牌

    我在用着office js helpers认证库 https github com OfficeDev office js helpers authentication 使用Microsft Azure AD 2 0 Converged a
  • ADAL - AcquireTokenSilentAsync 失败(Azure Active Directory 身份验证库)

    我编写了一个新的应用程序来通过其余 API 访问 Office 数据 因此我想使用新的 认证模型 V2 0端点 v2 0 端点有什么不同 https azure microsoft com en us documentation artic
  • 升级到 Office 365 专业增强版后 Excel VBA 运行速度极慢

    我粘贴部分代码如下 这段代码是解析从HTTP请求得到的JSON字符串 根本没有工作表 工作簿操作 在office升级到office365专业增强版之前 效率还是蛮高的 但升级后 解析一个不到2秒的json 却要花费几分钟 我个人不明白根本原
  • Office.js:插入行后表中的 ContentControl 损坏

    I m using Microsoft Word for Microsoft 365 MSO Version 2307 Build 16 0 16626 20170 64 bit which means that Word API is v
  • 如何使用 SQL 查询在 Access 中的字段上设置验证规则?

    我正在使用 MS Access 2016 Office 365 目前遇到问题 下面是一个演示此问题的示例 这里我创建了一个表 名为节点家庭链接 由两个字段组成 NodeID 和 FamilyID 如下所示 现在 NodeID 是从另一个表
  • Office excel将CORS请求作为跨域请求

    我正在尝试从我的 Excel 插件发出跨域请求 正如这里所建议的 http dev office com docs add ins develop addressing same origin policy limitations http

随机推荐

  • 扩展的 VSCode 错误日志在哪里?

    当我收到扩展错误时 我无法知道为什么会发生错误 您可能正在寻找 cmd shift p gt 搜索Show Logs gt Extension Host
  • 如何使 HSQL 驱动程序正常工作?

    我目前正在学习 Java 中的一些数据库技巧 我发现我正在读的这本好书 在某些时候 它鼓励我尝试与以下类进行手动数据库连接 import java sql DriverManager import java sql Connection i
  • Serialized接口的DTO实现

    Java DTO 模型对象是否必须实现序列化 如果是这样为什么 如果不是 对性能等有何影响 DTO 通常是数据传输对象 它不必使用 Java 序列化 但如果不使用 则需要遵循一些其他约定 这不是性能问题 就像您使用 Java 序列化一样 它
  • ruby 中的 ||= 是什么? [复制]

    这个问题在这里已经有答案了 可能的重复 在 Ruby 中是什么意思 https stackoverflow com questions 995593 what does mean in ruby ruby 中的 是什么 这是一个条件分配 如
  • 用原始图像替换蒙版 opencv Python

    我正在尝试用原始图像像素替换使用蒙版找到的对象 我有一个遮罩 在未检测到物体的情况下显示黑色 如果检测到物体则显示白色 然后我在 where 语句中使用该图像 image np where image2 255 255 255 any ax
  • Hibernate:CRUD 通用 DAO

    我的网络应用程序有很多服务表 实体 例如payment methods tax codes province codes etc 每次添加一个新实体时 我都必须编写一个 DAO 问题是 基本上 它们都是相同的 但唯一的区别是实体类本身 我知
  • Android 平台源代码中的断点

    使用 Intelllj idea 我尝试调试 Android 源 API 17 但是当我在平台源中设置断点时 它们在运行时会被忽略 在调试时查看断点 其中有一个十字 并显示一条消息 在类 android view 的第 15 508 行找不
  • Spring - applicationContext.xml 无法打开,因为它不存在

    我有一个 Spring MVC 应用程序 并且与文件 applicationContext xml 结合使用 JUnit 测试时遇到问题 在我的 JUnit 测试类中我写道 final ApplicationContext context
  • 使用 XML 包将 html 表抓取到 R 数据帧中

    如何使用 XML 包抓取 html 表 以维基百科页面为例巴西足球队 http en wikipedia org wiki Brazil national football team 我想在 R 中阅读它并获取 巴西与 FIFA 认可球队对
  • 在 GIT 中处理 Rails db/schema.rb 文件的正确方法是什么?

    我们应该包括schema rb同时致力于 GIT 或者我们应该忽略它 什么是正确的做法 好标准schema rbRails 2 文件在文件顶部的注释块末尾有这样的内容 It s strongly recommended to check t
  • 警告:本机不支持快速启动/快照

    我在使用 android studio 运行我的应用程序时遇到错误 但在此之前它工作正常 直到更新 Android API27 我尝试卸载它但没有任何结果 收到的警告是 模拟器 警告 本机不支持快速启动 快照 A 目前需要CPU UG功能
  • 是否可以使用 TagLibSharp 从 MP3 文件中删除 Lyrics3v2 标签?

    我想知道是否可以删除歌词3v2使用 MP3 文件中的标签类型标签库夏普 https github com mono taglib sharp图书馆 This http id3 org Lyrics3v2文档说块条目以单词 开头歌词开始 并以
  • Android ViewPager:从 URL 下载图像

    我正在尝试使用创建一个图片库ViewPager 我找到了几个例子并且我已经让它们全部工作了 示例没有展示的一件事是如何使用从 URL 下载的图像填充 ViewPager 所有教程都有图像Drawables文件夹或 SD 卡上 有谁知道 Vi
  • 使用 SF 库读取 GeoJSON 文件?

    我一天前刚开始使用 R 我正在尝试使用 SF 库读取 geojson 文件 但我不确定正确的方法是什么 library dplyr library sf geo lt system file my path zones geojson pa
  • 由于函数 asprintf 无法编译程序

    找到此代码 需要停止将戴尔笔记本电脑中的 CPU 节流至 20 这是由于电源适配器无法被计算机识别而发生的 尝试在 Kubuntu 上编译并得到以下结果 warning implicit declaration of function as
  • 继续处理结果的 Null 值(Nodejs、Puppeteer)

    我刚刚开始使用 Puppeteer Headless Chrome 和 Nodejs 我正在抓取一些测试站点 当所有值都存在时 一切都很好 但如果该值丢失 我会收到如下错误 Cannot read property src of null
  • Microsoft Azure Graph API下载项附件内容

    当我在office365网页浏览器页面中打开电子邮件时 有一个选项可以下载该电子邮件的附件内容项目附件 使用 Microsoft Outlook 将另一封邮件附加到当前邮件 eml 文件 内容类型 RFC 822 但是 当我尝试通过 Gra
  • 监控 Spring Embedded Tomcat 指标

    我想监控 Spring Boot 服务中嵌入的 Tomcat Spring 本身为我提供了一些会话使用统计信息 但我需要有关底层线程池的其他信息 如活动连接 队列长度等 我搜索了注册的bean 但找不到使用的线程池 关于如何检索该信息有什么
  • PHP:如何检查一年中的季节并相应地设置类别

    我有一个网站 它在标题区域使用 4 种不同的背景图像 这些图像在视觉上对应于耳朵的季节 夏季 秋季等 对于夏季时间框架 我使用一张图像 对于秋季时间框架 使用另一张图像 依此类推 问题是 一旦一年中的季节发生变化 我就必须手动更改这些图像
  • 使用office.js进行office加载项开发时,无法在word文档的书签中插入文本

    我正在开发一个 word 插件 主要任务是使用数据库中的数据填充文档中的书签 在 office js 中 我发现书签可以作为范围对象进行访问 并且我正在使用 rangeObject insertText text insertLocatio