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

Функция VB (VBA) определения IP адреса по имени хоста

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

Function ResolveAddress(ByVal ComputerName$) As String
    ' выполняет ICMP запрос (ping) до адреса ComputerName
    ' возвращает IP-адрес ComputerName$
    Dim oPingResult As Variant: On Error Resume Next
    For Each oPingResult In GetObject("winmgmts://./root/cimv2").ExecQuery _
        ("SELECT * FROM Win32_PingStatus WHERE Address = '" & ComputerName & "'")
        If IsObject(oPingResult) Then ResolveAddress = oPingResult.ProtocolAddress
    Next
End Function

Использовать функцию можно так:
Sub ПримерИспользованияResolveAddress()
    Debug.Print ResolveAddress("yandex.ru")    '  возвращает 87.250.250.11
    Debug.Print ResolveAddress("google.com")    '  возвращает 209.85.143.99
End Sub

Этот код (c функцией ResolveAddress) работает очень быстро (в отличие от приведённого ниже)

Загрузка списка подпапок (2 уровней) в Excel

Скриншот таблицы Excel со списком папок и подпапок

Макрос предназначен для загрузки в Excel списка подпапок заданной папки

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

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

Также обратите внимание, что в столбце «размер папки» хоть число и выводится с единицей измерения (слово «байтов»), тем не менее, в ячейках хранятся числовые значения, что позволяет корректно выполнять сортировку, и использовать значения этих ячеек в формулах

Смотрите также макрос загрузки списка файлов из заданной папки,
и макрос загрузки списка подпапок выбранной папки

Код макроса:

Дробное число прописью в Excel (вывод целых, десятых, сотых, тысячных)

Не мой макрос, - нашел в интернете
Вроде работает как надо
Используется на листе Excel как формула =ДробноеЧислоПрописью(A1)

Function ДробноеЧислоПрописью(chislo)

Функция VBA, возвращающая первое слово, написанное в заглавной (прописной) буквы

Option Compare Binary
 
Function FirstProperCaseWord(ByVal txt$) As String
    ' возвращает первое слово, написанное с заглавной буквы в строке txt$

Поиск значения на листе относительно ячейки с заданным текстом

Function FindAndInsert(ByRef sh As Worksheet, ByVal txt As String, _
                       ByVal OffsetY As Long, ByVal OffsetX As Long, Optional ByVal NewValue = Null) As Range