我想添加到我的Excel加載項中,以跟蹤執行特定操作的最後一位用戶及其執行日期的機制。是否有可能從加載項獲取有關當前登錄到Excel的用戶的信息?在Excel office-js加載項中獲取當前登錄的用戶
謝謝!
我想添加到我的Excel加載項中,以跟蹤執行特定操作的最後一位用戶及其執行日期的機制。是否有可能從加載項獲取有關當前登錄到Excel的用戶的信息?在Excel office-js加載項中獲取當前登錄的用戶
謝謝!
幸運的是,單點登錄(SSO)在您發佈問題的前一天在開發人員預覽中發佈。作爲系統的一部分,您的加載項將從Office主機應用程序獲取包含「preferred_username」屬性的令牌。該屬性的值是登錄到Office的用戶的電子郵件。
在Enable single sign-on for Office add-ins (preview)有概覽。
有兩個樣本:
在這兩個樣本,該插件還使用了從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插件中獲取用戶信息。
可能是你的問題是一個或多或少重複: How to get username, email address, filename from task pane app
Single Sign On for Office-js目前正在開發中,你可以開始在預覽擺弄它。
謝謝!我會試一試。 –
嗨。今天我下載了ASPNET-SSO示例。當我嘗試使用「localhost:44355」作爲應用程序ID URI註冊應用程序時,出現此錯誤:「您的應用程序ID URI必須是全局唯一的。」如果我更改端口,我不會收到錯誤。那個地址代表什麼? 44355港口重要嗎?另外,當我嘗試構建示例時,我在清單文件中出現錯誤,說WebApplicationId是VersionOverrides的無效子項。有任何想法嗎? –
@MarioSolís一些其他人遇到了同樣的問題。我們已經更新了我們的指導來解決這個問題。 GitHub版本的說明現在已更新:https://github.com/OfficeDev/office-js-docs/blob/master/docs/develop/create-sso-office-add-ins-aspnet.md dev.office.com將在幾天內更新。修復很簡單:在註冊加載項時將應用程序GUID添加到應用程序ID URI,並在加載項清單中的WebApplicationResource元素中使用相同的值。 –