View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
urkec urkec is offline
external usenet poster
 
Posts: 131
Default Returning the IP results from a ping?

" wrote:

On Mar 12, 3:18 pm, urkec wrote:
" wrote:
I snagged this beautiful piece of code from here, and I've seen other
code that could do it, but I'm having a hard time gluing it all
together. Is there any way I can make this:


---start code---


Public Sub PingIt()


Set Machines = Sheets(1).Range("A1", "A3")


For Each Machine In Machines.Cells
Debug.Print Machine
Set objPing = GetObject _
("winmgmts:{impersonationLevel=impersonate}"). _
ExecQuery("select * from Win32_PingStatus " & _
"where address = '" & Machine & "'")


For Each objStatus In objPing


If objStatus.StatusCode = 0 Then
Sheets(1).Cells(Machine.Row, Machine.Column + 1) = _
"Success"


Else


Sheets(1).Cells(Machine.Row, Machine.Column + 1) = _
"Failed"


End If


Next
Next


End Sub


---end code---


Not only tell me if it Success/Failed on the ping, but also in the
next column over the IP address?


TIA,
Benjamin


Does this code work for you:

Public Sub PingIt()

Set Machines = Sheets(1).Range("A1", "A3")

For Each Machine In Machines.Cells
Debug.Print Machine
Set objPing = GetObject _
("winmgmts:{impersonationLevel=impersonate}"). _
ExecQuery("select * from Win32_PingStatus " & _
"where address = '" & Machine & "'")

For Each objStatus In objPing

If objStatus.StatusCode = 0 Then

Sheets(1).Cells(Machine.Row, Machine.Column + 1) = _
"Success"
Sheets(1).Cells(Machine.Row, Machine.Column + 2) = _
objStatus.ProtocolAddress

Else

Sheets(1).Cells(Machine.Row, Machine.Column + 1) = _
"Failed"

End If

Next
Next

End Sub

Where are you guys
getting the documentation from? (I saw a reference to it earlier)
Inside the help files under VBA?


For WMI classes like Win32_PingStatus, it is he


http://msdn2.microsoft.com/en-us/lib...84(VS.85).aspx

--
urkec