1

I made a tool in Excel to catch pings from several IP but it has a problem when I set -n parameter on bigger value. First IP works good but next ones are delayed and I have to break them manual.

Sample results for -n 300:

  • IP1: sent=300
  • IP2: sent=102
  • IP3: sent=77
  • IP4: sent=75
  • IP5: sent=75

Any suggestions??

Thanks a lot

Sub runPing(Optional Parameters As String)

Dim sh As Object

Dim shEx1 As Object
Dim pingComand1 As String
Dim buffor1 As String

Dim shEx2 As Object
Dim pingComand2 As String
Dim buffor2 As String

Dim shEx3 As Object
Dim pingComand3 As String
Dim buffor3 As String

Dim shEx4 As Object
Dim pingComand4 As String
Dim buffor4 As String

Dim shEx5 As Object
Dim pingComand5 As String
Dim buffor5 As String
   
Set sh = CreateObject("WScript.Shell")

pingComand1 = ActiveSheet.Range("B3")
pingComand2 = ActiveSheet.Range("B4")
pingComand3 = ActiveSheet.Range("B5")
pingComand4 = ActiveSheet.Range("B6")
pingComand5 = ActiveSheet.Range("B7")

If Parameters = "" Then
    pingComand1 = pingComand1 & " " & ActiveSheet.Range("C3")
    pingComand2 = pingComand2 & " " & ActiveSheet.Range("C4")
    pingComand3 = pingComand3 & " " & ActiveSheet.Range("C5")
    pingComand4 = pingComand4 & " " & ActiveSheet.Range("C6")
    pingComand5 = pingComand5 & " " & ActiveSheet.Range("C7")
Else
    pingComand1 = pingComand1 & " " & Parameters
    pingComand2 = pingComand2 & " " & Parameters
    pingComand3 = pingComand3 & " " & Parameters
    pingComand4 = pingComand4 & " " & Parameters
    pingComand5 = pingComand5 & " " & Parameters
End If

pingComand1 = "C:\Windows\System32\PING.exe " & pingComand1
pingComand2 = "C:\Windows\System32\PING.exe " & pingComand2
pingComand3 = "C:\Windows\System32\PING.exe " & pingComand3
pingComand4 = "C:\Windows\System32\PING.exe " & pingComand4
pingComand5 = "C:\Windows\System32\PING.exe " & pingComand5

Set shEx1 = sh.Exec(pingComand1)
Set shEx2 = sh.Exec(pingComand2)
Set shEx3 = sh.Exec(pingComand3)
Set shEx4 = sh.Exec(pingComand4)
Set shEx5 = sh.Exec(pingComand5)

buffor1 = shEx1.StdOut.ReadAll
buffor2 = shEx2.StdOut.ReadAll
buffor3 = shEx3.StdOut.ReadAll
buffor4 = shEx4.StdOut.ReadAll
buffor5 = shEx5.StdOut.ReadAll
Sylwek
  • 11
  • 2

0 Answers0