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

Получение полного имени пользователя 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

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

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

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

Поиск подходящих строк в двумерном массиве

Данная функция ищет в массиве все строки, подходящие под заданные критерии, и возвращает результат в виде отфильтрованного массива:

Загрузка картинок из интернета по ссылкам, и сохранение их в отдельные папки

Вид исходный таблицы со ссылками на картинки в интернете

Данный макрос перебирает все строки на листе, и для каждой строки скачивает из интернета картинки, ссылки на которые присутствуют в этой строке (начиная с 3 столбца)