Вставка имени пользователя в ячейку (Microsoft Excel)
Sunlim отметила, что при установке Office пользователь указывает свое имя. К этому имени можно получить доступ в некоторых программах Office, например в Word. Санлим интересуется, как он может получить доступ к имени пользователя в Excel и поместить это имя в ячейку.
Для этого можно реализовать короткий однострочный макрос, который обращается к свойству UserName объекта Application. Этот метод подробно описан в другом выпуске _ExcelTips: _
http://excelribbon.tips.net/T009814
Такой подход отлично подходит для определения имени пользователя, связанного с текущей установкой Excel. Однако это может отличаться от того, кто использует текущую книгу. Например, если книга является общей, возможно, что несколько человек могут использовать ее одновременно. В этом случае вам понадобится способ определить эти имена, как показано здесь:
Function UserNames() As String Dim Users As Variant Dim sMsg As String Dim iIndex As Integer Users = ActiveWorkbook.UserStatus For iIndex = 1 To UBound(Users, 1) sMsg = Users(iIndex, 1) & vbLf Next iIndex 'remove final line feed sMsg = Left(sMsg, Len(sMsg) - 1) UserNames = sMsg End Function
Чтобы использовать функцию, просто введите следующую формулу в ячейку, в которой должны отображаться имена:
=UserNames
Если вместо этого вы хотите знать, кто в настоящее время использует компьютер, лучше выйти за рамки Office и вместо этого взять имя из самой Windows. Таким образом вы можете определить, кто вошел в Windows, и использовать это в качестве имени пользователя. Это требует объявления вызова функции API, но в остальном это относительно просто:
Private Declare Function GetUserName Lib "advapi32.dll" _ Alias "GetUserNameA" (ByVal lpBuffer As String, nSize _ As Long) As Long Function UserName2() As String Dim strBuff As String * 100 Dim lngBuffLen As Long lngBuffLen = 100 GetUserName strBuff, lngBuffLen UserName2 = Left(strBuff, lngBuffLen - 1) End Function
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (12745) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Inserting_the_Users_Name_in_a_Cell [Вставка имени пользователя в ячейку]
.