You need to ping the computer using the IP address or the network name. The
webpage below using the Win32 API IsDestinationReachable to accomplish this
task.
Private Declare Function IsDestinationReachable Lib "//HPNC6220"
Sub Button1_Click()
If IsDestinationReachable(//HPNC6220, Ret) = 0 Then
MsgBox "The destination cannot be reached!"
Else
MsgBox "The destination can be reached!"
End If
End Sub
I want to ping the network computer \\HPNC6220 then use
IsDestinationReachable Lib to sort with an if-then to sort the results.
The library "SENSAPI.DLL" is in the windows/system32 folder on your PC and
you cannot change the defination of the library. The function
IsDestinationReachable is in this library and the parameter can't be
modified. Copy the code below exactly as posted.
The library needs to know the lenght of the record returned so you need to
include this line: Ret.dwSize = Len(Ret)
Const NETWORK_ALIVE_AOL = &H4
Const NETWORK_ALIVE_LAN = &H1
Const NETWORK_ALIVE_WAN = &H2
Private Type QOCINFO
dwSize As Long
dwFlags As Long
dwInSpeed As Long 'in bytes/second
dwOutSpeed As Long 'in bytes/second
End Type
Private Declare Function IsDestinationReachable Lib "SENSAPI.DLL" _
Alias "IsDestinationReachableA" _
(ByVal lpszDestination As String, ByRef lpQOCInfo As QOCINFO) As Long
Private Sub Form_Load()
Dim Ret As QOCINFO
Ret.dwSize = Len(Ret)
If IsDestinationReachable("//HPNC6220", Ret) = 0 Then
MsgBox "The destination cannot be reached!"
Else
MsgBox "The destination can be reached!"
End If
End Sub
I need this check to be part of a program, not just a one time thing.
When I copied and pasted the latest program you gave me I stored it and
started Excel from scratch. Envolking the "Private Sub Form_Load()
" but nothing happened. Neither of the MSGBOXes worked. I put the program
in Sheets(Sheet1) then ThisWorkbook still nothing. What am I doing wrong?
I put the code in a module and single step through the code without any
problems. The cod eshould run from anyplace in the VBA project since it is
not refering to any sheets.
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.