Office js 如何在Excel工作簿中获取工作表列表并在加载项UI中显示它们?

Office js 如何在Excel工作簿中获取工作表列表并在加载项UI中显示它们?,office-js,scriptlab,Office Js,Scriptlab,我正在尝试在Office JS加载项中执行一些工作 我已经看过脚本实验室和通过yeoman进行的侧加载 除了学习Office和Excel API本身,我还没有找到足够的示例代码来克服学习如何使用React/Typescript的困难 如果有人能够演示Script Lab List worksheets示例的简单扩展,将工作表列表放入Taskpanel加载项UI,而不是简单地将其转储到console.log中,那就太好了 还有一个后续问题: 我的目标是从GoogleSheets应用程序脚本中移植一

我正在尝试在Office JS加载项中执行一些工作

我已经看过脚本实验室和通过yeoman进行的侧加载

除了学习Office和Excel API本身,我还没有找到足够的示例代码来克服学习如何使用React/Typescript的困难

如果有人能够演示Script Lab List worksheets示例的简单扩展,将工作表列表放入Taskpanel加载项UI,而不是简单地将其转储到console.log中,那就太好了

还有一个后续问题: 我的目标是从GoogleSheets应用程序脚本中移植一些代码,这样我们就可以在Excel中做同样的事情。该项目只针对一个工作簿,不会分发。在真正的Office插件上下文中这样做是否更好,并承受侧面加载?我们真的必须始终运行单独的节点服务器吗!?还是尝试在脚本实验室里完成这一切?
我喜欢脚本实验室路线的简单性,但我担心,因为它到处都贴着警告,它是用于实验和原型设计,而不是生产工作。

在其核心,Office web加载项只是一个web应用程序,即任务窗格是包含各种HTML元素的画布UI,您还可以使用JavaScript/TypeScript更新/操作任务窗格的内容。因此,只需指定将包含输出的HTML元素,然后使用JavaScript/TypeScript设置元素的值,就可以将输出写入任务窗格

例如,您可以在HTML中指定span元素:

<span id="result"></span>
我创建了一个代码段,演示了列表工作表操作的这种方法。您可以使用脚本实验室自己尝试该代码段。只需免费安装Script Lab加载项,然后在导航菜单中选择导入,并使用以下要点URL:

最后,关于您的后续问题的评论:

ScriptLab是一个实验性工具,您可以使用它来学习开发Office插件;它不是Microsoft的官方产品,不受支持,也不打算在生产用例中使用。 若要在生产用例中使用外接程序,建议您将外接程序web应用部署到web服务器,然后使用任意一个发布外接程序。
非常感谢你!我确实理解你举的例子。您是否认为尝试使用结构列表组件会变得更复杂?这就是我迷路的地方。我无法找到正确的方法来生成工作表列表,临时存储它们,然后将它们交给render方法中的列表组件。关于可用的发布方法,我们的环境只是一些人,每个人都使用自己的Office 365个人帐户。这意味着管理中心和SharePoint已退出。三分之二的人在使用Mac电脑,所以我认为这排除了网络共享的可能性,而且因为它只面向3人的受众,所以要想让它在AppSource上发布似乎并不太可行。所以,除非我遗漏了什么,否则我们只能进行侧加载,对吗?快速启动应该对您的场景有所帮助。我不是React专家,但我认为您可以使用该快速启动中的说明创建外接程序,然后更新外接程序的HTML和脚本,以包含特定场景的元素。“快速入门”至少应该帮助您了解应用程序的各个组件是如何相互连接的。重新发布-共有两个部分:1个是web应用程序,2个是清单文件。您可以将web应用部署到web服务器,然后更新清单以指向web应用的URL,并将清单文件部署到所有用户都可以访问的位置。然后,每个用户都可以使用或的说明在Excel中加载加载项。好的,再次感谢!如果你感觉非常好,请随意看看我的另一个问题,但你已经是我这一天的亮点。
$('#result').html('This is the result!');