VBA: Быстрая проверка наличия книги/надстройки в памяти

Если нужно узнать, загружена в памяти надстройка или рабочая книга без перебора и не только видимые книги, то можно это легко сделать вот таким вот способом:

'=======================================================================================
' Функция, проверяющая наличия в памяти книги/надстройки
Public Function CheckInMemory(ByVal WBName As String, Optional ByVal TrimName As Boolean = True) As Boolean

    CheckInMemory= False
    If TrimName Then WBName = Trim(WBName)
    If WBName = "" Then Exit Function

    On Error GoTo BayBay
    If Len(Workbooks(WBName).FullName) > 0 Then
        CheckInMemory= True
        Exit Function
    End If
BayBay:
End Function

Пример использования:

    If Not CheckInMemory("zip.xla") Then Exit Sub
    If CheckInMemory("mybase.xls") Then
        MsgBox "Можно работать дальше!"
    End If

VBA: Быстрая проверка наличия компьютера в сети по пингу

Если необходимо узнать, подключен ли какой то компьютер сейчас или нет на VBA то самый быстрый способ это сделать с помощью команды PING:

' Возвращает TRUE, если пинг прошел
Public Function Ping(ByVal ComputerName As String) As Boolean
Dim oPingResult As Variant
     For Each oPingResult In GetObject("winmgmts://./root/cimv2").ExecQuery _
         ("SELECT * FROM Win32_PingStatus WHERE Address = '" & ComputerName & "'")
         If IsObject(oPingResult) Then
             If oPingResult.StatusCode = 0 Then
                 Ping = True
                 'Debug.Print "ResponseTime", oPingResult.ResponseTime
                Exit Function
             End If
         End If
     Next
End Function