I created a VBA function in Excel to identify the current user's email address.
Public Function UserName()
Dim OL, olAllUsers, oExchUser, oentry, myitem As Object
Dim User As String
Set OL = CreateObject("outlook.application")
Set olAllUsers = OL.Session.AddressLists.Item("All Users").AddressEntries
User = OL.Session.CurrentUser.Name
Set oentry = olAllUsers.Item(User)
Set oExchUser = oentry.GetExchangeUser()
UserName = oExchUser.PrimarySmtpAddress
End Function
For most users, this spits out their email address (e.g. john_doe@generic.com).
For some it doesn't update away from the default, which is my own email as the code executed successfully when I tried it.