Макросы VBA Excel — Страница 10

Форма авторизации для проектов VBA

Форма авторизации предназначена для разграничения прав пользователей при работе с документами Office, содержащими макросы.

 

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

 

Программа допускает создание неограниченного числа пользователей, каждый из которых принадлежит к одной из следующих групп:
пользователь, уверенный пользователь, администратор, разработчик.
(количество групп при желании можно легко увеличить до 9999)

Скачать файл из интернета без использования WinAPI

Часто требуется макросом скачать некий файл из интернета.

Получение полного имени пользователя Windows макросом VBA

Чтобы получить полное имя пользователя в Windows, можно использовать функцию UserFullName:

Sub ПримерИспользованияUserFullName()
    ПолноеИмяПользователяWindows = WMI_UserFullName
    MsgBox ПолноеИмяПользователяWindows
End Sub

Данная функция использует интерфейс WMI для получения необходимых данных.

Function WMI_UserFullName() As String
    login$ = CreateObject("WScript.Network").UserName    ' читаем логин текущего пользователя

    Set objWMIService = GetObject("winmgmts://./root/CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_UserAccount", , 48)
    For Each objItem In colItems    ' перебираем все учётные записи
        If objItem.Name = login$ Then WMI_UserFullName = objItem.FullName
    Next
End Function

Посмотреть список всех учётных записей пользователей на компьютере можно следующим кодом:

Sub WMI_username()
    Set objWMIService = GetObject("winmgmts://./root/CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_UserAccount", , 48)
    For Each objItem In colItems
        Debug.Print "FullName: " & objItem.FullName
    Next
End Sub

Отображение кодов символов для текста выделенной ячейки

Окно вывода кодов символов для текущей ячейки

Надстройка предназначена для быстрого просмотра кодов символов текста, введённого в ячейку.

Порой бывают ситуации, когда формулы поиска и сравнения выдают неожиданный результат - одинаковые с виду ячейки для формул оказываются разными.

И вот в этих случаях на помощь приходит эта надстройка.

С её помощью вы быстро обнаружите, что в похожих ячейках одни и те же буквы набраны в разных раскладках или в разных кодировках, а также сможете отличить обычный пробел (с кодом 32) от неразрывного (с кодом 160).

Пользоваться надстройкой очень просто - выделите ячейку, содержащую анализируемый текст, и нажмите комбинацию клавиш Ctrl + Alt + Shift + C

При выделении на форме результатов позиции с кодом символа - этот символ подсвечивается (выделяется синим) в поле с содержанием текстовой строки.

Можно открыть сразу несколько окон просмотра - выделяйте различные ячейки, и для каждой из них нажимайте вышеозвученную комбинацию на клавиатуре:

Функция импорта данных из HTML файлов

Функция FileQueryRange предназначена для импорта данных из файлов HTML

Например, если нам надо макросом Excel получить данные из писем, созданных в HTML формате, то эта функция как раз нам и поможет