Практическое руководство. Отображение в ячейке имени текущего пользователя
Обновлен: Ноябрь 2007
Применение |
---|
Сведения, приведенные в данном разделе, относятся только к указанным проектам Visual Studio Tools for Office и версиям Microsoft Office. Тип проекта
Версия Microsoft Office
Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов. |
Метод GetCurrent объекта WindowsIdentity позволяет зачитать имя текущего пользователя. Затем полученное имя можно отобразить на листе Microsoft Office Excel в именованном диапазоне, чтобы представить текущего пользователя.
Для отображения текста в ячейке используйте элемент управления NamedRange или собственный объект диапазона Excel.
Использование элемента управления NamedRange
В этом примере демонстрируется настройка уровня документа. Данный код необходимо поместить в класс листа, а не в класс ThisWorkbook.
Чтобы отобразить имя текущего пользователя в именованном диапазоне
Получите имя пользователя.
Dim user As System.Security.Principal.WindowsIdentity user = System.Security.Principal.WindowsIdentity.GetCurrent()
System.Security.Principal.WindowsIdentity user; user = System.Security.Principal.WindowsIdentity.GetCurrent();
Создайте элемент управления NamedRange с именем управления userID и отобразите имя пользователя.
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
Получите имя пользователя.
Dim user As System.Security.Principal.WindowsIdentity user = System.Security.Principal.WindowsIdentity.GetCurrent()
System.Security.Principal.WindowsIdentity user; user = System.Security.Principal.WindowsIdentity.GetCurrent();
Создайте объект Range с именем userID и отобразите имя пользователя.
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;
Отказоустойчивость
Исключение может возникнуть при следующих условиях:
У пользователя отсутствует разрешение на доступ к объекту WindowsIdentity (класс SecurityException).
Проблемы взаимодействия (класс COMException).
См. также
Задачи
Практическое руководство. Ссылки на диапазоны листов в коде
Практическое руководство. Создание объекта WindowsPrincipal
Основные понятия
Общие сведения о необязательных параметрах в решениях Office