Excel - VBA

VBA로 인터넷 연결을 확인하기

EGTools 2023. 7. 10. 12:55
728x90

인터넷에 연결되어 있는지는 윈도우 API를 사용하여 확인이 가능합니다.

 

Window API를 사용할 수 있도록 정의

#If Win64 Or VBA7 Then
Public Declare PtrSafe Function InternetGetConnectedState Lib "wininet.dll" (ByRef dwflags As Long, ByVal dwReserved As Long) As Long
#Else
Public Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef dwflags As Long, ByVal dwReserved As Long) As Long
#End If

 

API를 사용하여 연결된 상태를 확인합니다.

관련된 상수는 아래와 같습니다.

  • INTERNET_CONNECTION_MODEM As Long = &H1
  • INTERNET_CONNECTION_LAN As Long = &H2
  • INTERNET_CONNECTION_PROXY As Long = &H4
  • INTERNET_CONNECTION_OFFLINE As Long = &H20
Function IsInternetConnected() As Boolean
    Dim L As Long, r As Long
    
    r = InternetGetConnectedState(L, 0&)

    Select Case r
    Case 1, 2, 4: IsInternetConnected = True
    Case Else: IsInternetConnected = False
    End Select
    
End Function

 

 

728x90