如何:在单元格中显示当前用户的登录 ID

更新:2007 年 11 月

适用于

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

项目类型

  • 文档级项目

  • 应用程序级项目

Microsoft Office 版本

  • Excel 2003

  • Excel 2007

有关更多信息,请参见按应用程序和项目类型提供的功能

可以使用表示当前用户的 WindowsIdentity 对象的 GetCurrent 方法读取当前用户的登录 ID。然后,可以在 Microsoft Office Excel 工作表中的命名范围内显示该用户的登录 ID。

若要在单元格中显示文本,请使用 NamedRange 控件或本机 Excel 范围对象。

使用 NamedRange 控件

此示例针对的是文档级自定义项。必须将下面的代码放置到某个表类中,而不是放置到 ThisWorkbook 类中。

在命名范围内显示当前用户的登录 ID

  1. 获取用户的登录 ID。

    Dim user As System.Security.Principal.WindowsIdentity
    user = System.Security.Principal.WindowsIdentity.GetCurrent()
    
    System.Security.Principal.WindowsIdentity user;
    user = System.Security.Principal.WindowsIdentity.GetCurrent();
    
  2. 创建一个名为 userID 的 NamedRange 控件,并显示用户的登录 ID。

    Dim userID As Microsoft.Office.Tools.Excel.NamedRange
    userID = Me.Controls.AddNamedRange(Me.Range("A1"), "userID")
    
    userID.Value2 = user.Name
    
    Microsoft.Office.Tools.Excel.NamedRange userID;
    userID = this.Controls.AddNamedRange(this.Range["A1", missing], "userID");
    
    userID.Value2 = user.Name;
    

使用本机 Excel 范围

在本机 Excel 范围内显示当前用户的登录 ID

  1. 获取用户的登录 ID。

    Dim user As System.Security.Principal.WindowsIdentity
    user = System.Security.Principal.WindowsIdentity.GetCurrent()
    
    System.Security.Principal.WindowsIdentity user;
    user = System.Security.Principal.WindowsIdentity.GetCurrent();
    
  2. 创建一个名为 userID 的 Range,并显示用户的登录 ID。

    Dim userID As Excel.Range = Me.Application.Range("A1")
    
    userID.Value2 = user.Name
    
    Excel.Range userID = this.Application.get_Range("A1", missing);
    
    userID.Value2 = user.Name;
    

可靠编程

以下情况可能会导致异常:

请参见

任务

如何:使用代码引用工作表范围

如何:创建 WindowsPrincipal 对象

概念

使用单元格

了解 Office 解决方案中的可选参数