使用 Office 外接程序平台来生成解决方案,通过解决方案扩展 Office 应用程序,并与 Office 文档中的内容进行交互。 通过使用 Office 加载项,可以使用熟悉的 Web 技术(如 HTML、CSS 和 JavaScript)来扩展 Outlook、Excel、Word、PowerPoint、OneNote 和 Project 并与之交互。 你的解决方案可以在 Office 中跨多个平台(包括 Windows、Mac、iPad 和浏览器)运行。
重要
加载项可以具有两种类型的清单之一。 本文的编写假设是,加载项使用的是大多数方案建议的类型:Microsoft 365 的统一清单。 有关这两种类型的详细信息,请参阅 Office 外接程序清单。
使用 Office 加载项平台可以执行下列操作:
向 Office 客户端添加新功能 - 将外部数据引入 Office、自动执行 Office 文档、公开 Office 客户端中Microsoft和其他功能等。 例如,使用 Microsoft Graph API,可以连接到提升工作效率的数据。
创建自定义 Copilot 代理,以读取和写入 Office 应用程序中打开的文档 (预览) - 使用户能够使用自然语言访问外接程序的功能。
新建可嵌入到 Office 文档的丰富、交互式对象 - 用户可添加到其自己的 Excel 电子表格和 PowerPoint 演示文稿的嵌入式地图、图表和交互式可视化效果。
Office 加载项的组件
Office 加载项包括两个基本组件:应用包和你自己的 Web 应用程序。 该包包含一个清单,该清单定义各种设置,包括外接程序如何与 Office 客户端集成。 需要在 Web 服务器或 Web 托管服务上托管 Web 应用程序,例如 Microsoft Azure。
应用包
Microsoft 365 应用的应用包是一个 zip 文件,其中包含一个清单文件、两个应用图标,以及可能的其他配置或本地化文件。 应用逻辑和数据存储托管在其他地方,并由 Microsoft 365 主机应用程序通过 HTTPS 进行访问。 你将向管理员提交应用包,以便发布到组织或合作伙伴中心,以发布到Microsoft市场。
有关应用包的详细概述,请参阅 适用于 Microsoft 365 的应用包。
清单
清单指定加载项的设置和功能,例如:
外接程序的显示名称、说明、ID、版本和默认区域设置。
如何将外接程序与 Office 集成。
加载项如何与 Copilot (预览版) 集成。
外接程序的权限级别和数据访问要求。
有关清单的详细概述,请参阅 具有 Microsoft 365 统一应用清单的 Office 外接程序。
Web 应用
最基本的 Office 外接程序包含静态 HTML 页面,该页显示在 Office 应用程序中,但不与 Office 文档或任何其他 Internet 资源交互。 但是,若要创建与 Office 文档交互或允许用户从 Office 客户端应用程序与联机资源进行交互的体验,可以使用托管提供商支持的任何技术(客户端和服务器端),ASP.NET、PHP 或 Node.js) 等 (。 若要与 Office 客户端和文档交互,请使用 Office.js JavaScript API。
扩展并与 Office 客户端交互
在 Office 客户端应用程序中,Office 加载项可以执行以下任务:
扩展功能
执行 Copilot (预览版中的自然语言说明)
仅) (Excel 或 PowerPoint 创建新对象
扩展 Office 功能
可以通过以下功能向 Office 应用程序添加新功能:
自定义功能区按钮和菜单命令 (统称为“外接程序命令”) 。
具有 Webview 控件的可插入任务窗格,该控件几乎可以执行网页在浏览器中可以执行的任何操作。
响应 Office 文档或 Office 应用程序中事件的事件处理程序。
自定义 UI、任务窗格和事件处理程序在外接程序清单中指定。
自定义按钮和菜单命令
可以将自定义功能区按钮和菜单项添加到 Office web 版 和 Windows 上的功能区。 这便于用户直接从他们的 Office 应用程序访问外接程序。 自定义按钮和菜单项可以启动不同的操作,例如使用自定义 HTML 显示任务窗格或执行 JavaScript 函数。
任务窗格
除了使用加载项命令以外,还可以使用任务窗格,让用户与解决方案交互。 在 Excel、Word 和 PowerPoint 中,用户通过“主页>加载项”按钮启动任务窗格加载项。 在 Outlook 中,用户通过加载项按钮或功能区上的“ 所有应用” 按钮启动任务窗格加载项。
扩展 Outlook 功能
用户可以在查看、答复或创建电子邮件、会议请求、会议响应、会议取消或约会时运行 Outlook 加载项。 Outlook 加载项可以执行以下任务:
- 扩展 Office 应用功能区。
- 在查看或撰写 Outlook 项目时,在上下文中显示它。
- 发生特定事件时执行任务,例如用户创建新消息时。
注意
仅当用户在 Outlook 中打开日历时,才能使用与用户的日历、会议或约会进行交互的加载项,而不是 Teams。 但是,你可以创建 Teams 会议应用并将其显示在 Outlook 中。 有关详细信息,请参阅 将 Teams 会议应用扩展到 Outlook。
有关 Outlook 加载项的概述,请参阅 Outlook 加载项概述。
执行 Copilot 指令 (预览)
可以创建自定义 Copilot 代理,使用户能够使用 Copilot 聊天中输入的自然语言说明读取和写入 Office 文档。 有关详细信息,请参阅 将 Copilot 代理与 Office 外接程序结合使用 (预览版) 。
在 Office 文档中新建对象
可以在 Excel 和 PowerPoint 文档中嵌入基于 Web 的对象(称为内容加载项)。 通过内容加载项,可以集成基于 Web 的丰富数据可视化、媒体(如 YouTube 视频播放器或图片库)和其他外部内容。
Office JavaScript API
Office JavaScript API 包含的对象和成员适用于生成加载项,并与 Office 内容和 Web 服务交互。 Excel、Outlook、Word、PowerPoint、OneNote 和 Project 共享的通用对象模型。 Excel、OneNote、PowerPoint 和 Word 还有更广泛的特定于应用程序的对象模型。 这些 API 提供对已知对象(如段落和工作簿)的访问,从而更轻松地为特定应用程序创建外接程序。
代码示例
了解如何生成仅包含清单、HTML 网页和徽标的最简单的 Office 外接程序。 以下示例可帮助你开始使用你感兴趣的 Office 应用程序。
- Excel "Hello world" 加载项
- Outlook "Hello world" 加载项
- PowerPoint "Hello world" 加载项
- Word "Hello world" 加载项
- 使用 Copilot 代理在 Excel 中创建数据分析图表
Office 加载项与 COM 和 VSTO 加载项有何不同?
COM 和 VSTO 加载项是早期仅在 Windows 上的 Office 中运行的 Office 集成解决方案。 与 COM 和 VSTO 加载项不同,Office 外接程序是 Web 加载项:应用程序 (例如 Excel) ,读取外接程序清单,并在 UI 中连接外接程序的自定义功能区按钮和菜单命令。 在需要时,它会加载加载项的 JavaScript 和 HTML 代码,这些代码在沙盒中的浏览器或 Webview 控件的上下文中运行。
相较于使用 VBA、COM 或 VSTO 生成的加载项,Office 加载项提供以下优势。
跨平台支持:Office 加载项在 Office web 版、Windows、Mac 和 iPad 中运行。
Microsoft 365 支持的应用:Office 加载项可以与其他Microsoft 365 扩展(例如 Teams 应用和 Copilot 代理)打包,以便作为单个单元进行部署。
集中部署和分发:管理员可以跨组织集中部署 Office 加载项。
通过Microsoft市场轻松访问:可以将解决方案提交到Microsoft市场,使其可供广大受众使用。
基于标准 Web 技术:可以使用任何喜欢的库来生成 Office 加载项。
重要
新的 Outlook on Windows 不支持 COM 和 VSTO 加载项。 经典 Outlook on Windows 桌面客户端仍支持这些加载项。 若要了解详细信息,请参阅 为 Windows 上的新 Outlook 开发 Outlook 加载项。
后续步骤
有关开发 Office 加载项的更多详细介绍,请参阅开发 Office 加载项。