ここではExcelのマクロによるネットワーク関連の操作をするマクロをまとめてみました。 1.ping †サーバーの稼働状況をチェックするのにpingをサーバーに送信して確認することがあります。Excelから確認できれば便利です。特にサーバーが複数台ありExcelのシートのリストから順番にチェックできればとても便利です。 Function GetPingResult(Hostname As String) As String Dim objPing As Object Dim objStatus As Object Dim Result As String Dim wbemServices As Variant Dim TimeOut As Integer strComputer = "." ' ドット (.) は WMI のローカル コンピュータを表します。 TimeOut = 1 Set wbemServices = GetObject("winmgmts:\\" & strComputer) Set objPing = wbemServices.ExecQuery("Select * From Win32_PingStatus " & _ "Where ResolveAddressNames = True AND Buffersize = 1 AND Timeout = " & _ TimeOut & " AND Address = '" & Hostname & "'") For Each objStatus In objPing Select Case objStatus.StatusCode Case 0: strResult = "Connected" '成功した場合。これ以外はエラーです。 Case 11001: strResult = "Buffer too small" Case 11002: strResult = "Destination net unreachable" Case 11003: strResult = "Destination host unreachable" Case 11004: strResult = "Destination protocol unreachable" Case 11005: strResult = "Destination port unreachable" Case 11006: strResult = "No resources" Case 11007: strResult = "Bad option" Case 11008: strResult = "Hardware error" Case 11009: strResult = "Packet too big" Case 11010: strResult = "Request timed out" Case 11011: strResult = "Bad request" Case 11012: strResult = "Bad route" Case 11013: strResult = "Time-To-Live (TTL) expired transit" Case 11014: strResult = "Time-To-Live (TTL) expired reassembly" Case 11015: strResult = "Parameter problem" Case 11016: strResult = "Source quench" Case 11017: strResult = "Option too big" Case 11018: strResult = "Bad destination" Case 11032: strResult = "Negotiating IPSEC" Case 11050: strResult = "General failure" Case Else: strResult = "Unknown host" End Select GetPingResult = strResult Next Set wbemServices = Nothing Set objPing = Nothing End Function Last-modified: 2014-07-29 (火) 03:39:33 (3719d)
|