1
私は、デバイスのリストを実行してpingを実行し、それらがアップしている(通信中であることを意味する)か、ダウンした(pingが成功しなかった)かを知るプロセスを自動化しようとしています。私はいくつかのチュートリアルと計画を見て、次のスクリプトにそれを作った。シェル関数からの戻り値の理解
shell
機能と以下の機能の間で混乱することがあります。 ret
の値が0として返ってきて、pingが失敗したことが分かりました。しかしむしろ、私はそれが間違っていると思う。関数のこの問題と、戻り値を扱う方法については、誰でも私に明快さを提供することができます。もっと良いことに、私がやっていることに似た何かを創造しようと試みたことはありますか?
Sub testPing()
Dim WshShell
Set WshShell = VBA.CreateObject("WScript.Shell")
Dim testIP As String
Dim testPort As String
Dim yes, no As String
yes = "true"
no = "false"
testIP = Cells(3, 2).Value
testPort = Cells(3, 3).Value
ret = WshShell.Run("C:\Users\John.Doe\paping.exe " & testIP & " -p " & testPort & " -c 3", 0, True)
Debug.Print ret
End Sub
私は、プライベートIPをredactingのいずれかのポイントがありますかわかりません。 – ThunderFrame
@ThunderFrame合意しましたが、私は原則からそれをやろうと思っていました:-) –
これを投稿していただきありがとうございます。 'GetObject'内のコードは何ですか? – Rivers31334