Как показать текущее имя пользователя в ячейке?

в большинстве интернет-ресурсов, которые я могу найти, обычно показывают мне, как получить эту информацию в VBA. Есть ли прямой способ получить эту информацию в камере?

например, так же просто, как =ENVIRON('User') (который не работает)

5 ответов


на основе инструкции по ссылке ниже, выполните следующие действия.

в VBA вставьте новый модуль и вставьте в этот код:

Public Function UserName()
    UserName = Environ$("UserName")
End Function

вызовите функцию, используя формулу:

=Username()

на основе инструкции на:

https://support.office.com/en-us/article/Create-Custom-Functions-in-Excel-2007-2f06c10b-3622-40d6-a1b2-b6748ae8231f


Если вы не хотите, чтобы создать UDF на VBA или вы не можете, это может быть альтернативой.

=Cell("Filename",A1) Это даст вам полное имя файла, и из этого вы можете получить имя пользователя с чем-то вроде этого:

=Mid(A1,Find("\",A1,4)+1;Find("\";A1;Find("\";A1;4))-2)


эта формула выполняется только из книги, сохраненной ранее.

вы должны начать с 4-й позиции из-за первой косой черты от водить.


пример: для просмотра имени пользователя Windows в ячейке C5 можно использовать следующий скрипт:

Range("C5").Value = ": " & Environ("USERNAME").

самый простой способ создать макрос VBA, который обертывает эту функцию, вот так:

Function UserNameWindows() As String
    UserName = Environ("USERNAME")
End Function

затем вызовите его из ячейки:

=UserNameWindows()

посмотреть в этой статье для получения более подробной информации и другими способами.


отображается имя текущего пользователя:

Function Username() As String
    Username = Application.Username
End Function

свойства Application.Username содержит имя, введенное при установке MS Office.

введите эту формулу в ячейку:

=Username()