You can programmatically set the Internet Explorer off-line mode with the InternetSetOption API, as this code snippet demonstrates:
Const INTERNET_OPTION_CONNECTED_STATE = 50Const INTERNET_STATE_CONNECTED = 1Const INTERNET_STATE_DISCONNECTED = 2Const INTERNET_STATE_DISCONNECTED_BY_USER = &H10Const INTERNET_STATE_IDLE = &H100Const INTERNET_STATE_BUSY = &H200Const ISO_FORCE_DISCONNECTED = 1Private Declare Function InternetSetOption Lib "wininet.dll" Alias _ "InternetSetOptionA" (ByVal hInternet As Long, ByVal dwOption As Long, _ lpBuffer As INTERNET_CONNECTED_INFO, ByVal dwBufferLength As Long) As _ Boolean' Force the OffLine or OnLine modeSub SetOffLineMode(ByVal offLineMode As Boolean) Dim ci As INTERNET_CONNECTED_INFO Dim retValue As Boolean If offLineMode Then ci.dwConnectedState = INTERNET_STATE_DISCONNECTED_BY_USER ci.dwFlags = ISO_FORCE_DISCONNECTED Else ci.dwConnectedState = INTERNET_STATE_CONNECTED End If retValue = InternetSetOption(0&, INTERNET_OPTION_CONNECTED_STATE, ci, _ LenB(ci)) If retValue = False Then Err.Raise vbObjectError + 1000, , _ "An error occurred calling SetOffLineMode function"End Sub