ネットワークの基礎から実務まで、順番に学べるメニューです。
Pingで疎通確認をする
VBAからネットワークの「つながる・つながらない」を確認してみましょう
Ping(ピング)は、相手の機器へ小さなパケットを送り、
応答が返ってくるか確認する基本的なネットワーク診断です。
今回はVBAからPingコマンドを実行し、結果を取得します。
このVBAでできること
◎
Ping実行
指定したIPアドレスやホスト名へPingを送信します。
⇄
応答確認
通信できるかどうかを確認できます。
⌕
結果表示
Ping結果をメッセージ表示します。
sequenceDiagram participant PC as 自分のPC participant Target as 接続先 PC->>Target: Ping送信 Target-->>PC: 応答 Note over PC,Target: 応答が返れば疎通OK
VBAコード
Sub PingTest()
Dim objShell As Object
Dim strCmd As String
Dim strResult As String
Set objShell = CreateObject("WScript.Shell")
strCmd = "cmd /c ping 8.8.8.8"
strResult = objShell.Exec(strCmd).StdOut.ReadAll
MsgBox strResult, vbInformation, "Ping結果"
End Sub
コード解説
① WScript.Shell を作成
Windowsコマンドを実行するためのオブジェクトです。
② Pingコマンドを作成
今回は Google Public DNS の 「8.8.8.8」へPingしています。
③ 実行結果を取得
コマンドの実行結果を文字列として取得しています。
④ メッセージ表示
Ping結果をそのまま表示しています。
実行結果例
8.8.8.8 に ping を送信しています 8.8.8.8 からの応答: バイト数 = 32 時間 = 15ms TTL = 117
よくあるトラブル
- 応答が返ってこない
- 接続先が停止している、 またはPingを拒否している可能性があります。
- 実行時エラーになる
- Windows Script Host が無効化されている場合があります。
- 非常に遅い
- 回線混雑やVPN経由により遅延している可能性があります。
途中で停止したい場合
VBA実行中に処理を止めたい場合は、 キーボードの Ctrl + Break (または Ctrl + Pause) を押してください。
ノートPCでは Fnキー との組み合わせが必要な場合があります。
まとめ
- Pingは通信確認の基本コマンドです
- VBAからWindowsコマンドを実行できます
- ネットワーク障害調査の第一歩として非常に重要です
ネットワーク設計・トラブル対応でお困りではありませんか?
株式会社リアライズがサポートいたします。
- ネットワーク設計・構築
- トラブル調査・改善
- 業務効率化・自動化