2017-05-05 4 views
3

Ich möchte meinem Excel-Add-In einen Mechanismus hinzufügen, um den letzten Benutzer, der bestimmte Aktionen durchgeführt hat, und das Datum, an dem er ausgeführt wurde, zu verfolgen. Ist es möglich, über das Add-In Informationen über den Benutzer zu erhalten, der gerade in Excel angemeldet ist?Aktuellen Benutzer im Excel-Office-js-Add-In abholen

Danke!

Antwort

2

Wie es der Zufall wollte, wurde Single Sign-On (SSO) in der Entwicklervorschau am Tag vor der Veröffentlichung Ihrer Frage veröffentlicht. Als Teil des Systems erhält Ihr Add-In ein Token von der Office-Host-Anwendung, das die Eigenschaft "preferred_username" enthält. Der Wert der Eigenschaft ist die E-Mail-Adresse des Benutzers, der bei Office angemeldet ist.

Es gibt eine Übersicht unter Enable single sign-on for Office add-ins (preview).

Es gibt zwei Proben:

Office-Add-in-ASPNET-SSO

Office-Add-in-Nodejs-SSO

In beiden Proben, das Add-In auch das Token aus Office-Host empfangen verwendet ein Zugriffstoken zu Microsoft Graph zu bekommen, aber Ihre Add-In muss diesen zusätzlichen Schritt nicht ausführen.

Ich kenne keine Möglichkeit, die Benutzeridentität ohne SSO zu erhalten.

+0

Danke! Ich werde es versuchen. –

+0

Hallo. Heute habe ich das ASPNET-SSO-Beispiel heruntergeladen. Als ich versuchte, die App mit "localhost: 44355" als Anwendungs-ID-URI zu registrieren, kam dieser Fehler: "Ihre Anwendungs-ID-URI muss global eindeutig sein." Wenn ich den Port ändere, bekomme ich den Fehler nicht. Was repräsentiert diese Adresse? Ist der Port 44355 wichtig? Als ich dann versuchte, das Beispiel zu erstellen, habe ich einen Fehler in der Manifestdatei erhalten, der besagt, dass WebApplicationId ein ungültiges Kind von VersionOverrides ist. Irgendwelche Ideen? –

+0

@ MarioSolís Ein paar andere Leute sind in dasselbe Problem geraten. Wir haben unsere Anleitung aktualisiert, um dieses Problem zu lösen. Die GitHub-Version der Anweisungen wird nun aktualisiert: https://github.com/OfficeDev/office-js-docs/blob/master/docs/develop/create-sso-office-add-ins-aspnet.md Die Version auf dev.office.com wird in ein paar Tagen aktualisiert. Das Update ist einfach: Fügen Sie dem Anwendungs-ID-URI die Anwendungs-GUID hinzu, wenn Sie das Add-In registrieren, und verwenden Sie denselben Wert im WebApplicationResource-Element im Add-In-Manifest. –

0

Sie brauchen kein Add-in, dies ist mit VBA möglich.

Angenommen, Sie verfolgen möchten, welche Benutzer den Wert in der Zelle verändert A1 Sie diesen Code in das Arbeitsblatt-Modul setzen können:

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 
Verwandte Themen