Verifica Connesisone a Internet
Hai un problema con Excel? 
Verifica Connesisone a Internet
di Pel (utente non iscritto) data: 09/04/2016 19:17:14
Ciao ragazzi, ho il seguente problema:
Io devo inviare una email da excel o stampare il foglio a seconda che la connessione a internet sia attiva o no.
Con VBA si riesce a creare un codice che verifichi la connessione a internet?!?!
Praticamente la stampa è la soluzione di emergenza alla mancata connessione a internet ovviamente...
Ho cercato online, ma nulla da fare, oltre che il problema va oltre le mie capacità...
di Pel (utente non iscritto) data: 09/04/2016 19:20:11
Grazie in anticipo!
di alfrimpa data: 09/04/2016 20:04:07
Ciao Pel
Ho trovato in rete il codice che vedi sotto che è, manco a dirlo, del grande scossa (se non lo conosci è un utente anche di questo forum molto esperto)
Inserisci il codice in un modulo standard e lancia la macro IsConnectedPing
Potresti incominciare a provarla.
Alfredo
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" _
(ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Boolean
Private Sub IsConnectedPing()
Dim bConn As Boolean
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" _
(ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Boolean
Private Sub IsConnectedPing()
Dim bConn As Boolean
Const sUrl As String = "indirizzo internet" 'attenzione al proxy <=== qui metti un indirizzo internet
bConn = InternetCheckConnection("h t t p://" & sUrl, &H1, &H0) <=== qui togli gli spazi in "h t t p"
If bConn Then
MsgBox "connesso a Internet (" & sUrl & ")", vbInformation, "TEST CONNESSIONE"
Else
MsgBox "connessione a " & sUrl & " fallita", vbCritical, "TEST CONNESSIONE"
End If
End Sub |
Risolto
di Pel (utente non iscritto) data: 10/04/2016 01:49:31
Ho fatto alcune modifiche perché ho office a 64 bit e snellito un po il codice a causa di doppioni ma ho risolto! Spero girerà anche sul 32..incrocio le dita!
In ogni caso ho fatto!
di patel data: 10/04/2016 08:20:18
questa è corretta
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" _
(ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Boolean
Private Sub IsConnectedPing()
Dim bConn As Boolean
Const sUrl As String = "google.it"
bConn = InternetCheckConnection("h t t p://" & sUrl, &H1, &H0) '<=== qui togli gli spazi in "h t t p"
If bConn Then
MsgBox "connesso a Internet (" & sUrl & ")", vbInformation, "TEST CONNESSIONE"
Else
MsgBox "connessione a " & sUrl & " fallita", vbCritical, "TEST CONNESSIONE"
End If
End Sub
|
Precisazione
di Pel (utente non iscritto) data: 10/04/2016 22:48:07
E per esser precisi, poiché da errore coi sistemi a 64 bit, bisogna aggiungere tra Declare e Function, PtrSafe
Vuoi Approfondire?