在Excel office-js加载项中获取当前logging的用户

我想添加到我的Excel加载项的机制,以跟踪执行特定操作的最后一个用户和执行的date。 是否有可能从加载项获取有关当前login到Excel的用户的信息?

谢谢!

幸运的是,单点login(SSO)是在您发布问题的前一天在开发人员预览版中发布的。 作为系统的一部分,您的加载项将从包含“preferred_username”属性的Office主机应用程序获取一个令牌。 该属性的值是login到Office的用户的电子邮件。

有关启用Office加载项单一login(预览)的概述。

有两个样本:

办公外接-ASPNET-SSO

办公外接-的NodeJS-SSO

在这两个示例中,外接程序还使用从Office主机接收到的令牌来获取Microsoft Graph的访问令牌,但是您的加载项无需执行额外的步骤。

我不知道如何在不使用SSO的情况下获取用户身份。

你不需要添加,这是可能的与VBA。

假设您想要跟踪用户更改了单元格A1的值,可以将此代码放在工作表模块中:

 Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then ' Do whatever... Debug.Print Environ("username") & " changed the cell " & Target.Address & " at " & Now() End If End Sub 

从标签,看起来你正在谈论的JavaScript插件(办公室365)。 不幸的是(AFAIK)目前不可能在javascript插件中获取用户信息。

可能您的问题或多或less是这一个的重复: 如何从任务窗格应用程序获取用户名,电子邮件地址,文件名

单点loginOffice-js目前正在开发中,您可以在预览中开始播放。