Live-Forum - Die aktuellen Beiträge
Datum
Titel
18.04.2024 18:04:29
18.04.2024 16:33:24
Anzeige
Archiv - Navigation
1056to1060
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Per VBA prüfen ob Online?

Per VBA prüfen ob Online?
03.03.2009 23:35:19
Tobias
Hallo allerseits,
Kann man per VBA prüfen,
ob der PC online ist?
greez tob

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workaround
04.03.2009 00:13:36
Daniel
Hi
keine Ahnung, ob das irgendwie geht, daher ich lass die Frage mal offen.
aber mit diesem Workaround könntest du dir u.U. behelfen:

Err = 0
On Error Resume Next
'--- hier eine Aktion einfügen, die zu einem Fehler führt, wenn der Rechner nicht online ist
'--- z.B. eine Datei aus einem Netzwerklaufwerk öffnen oder mit "ChangeDrive"
'--- ein Netzwerklaufwerk einstellen
if err = 0 then
Msgbox "Rechner Online"
Else
Msgbox "Keine Online-Verbindung vorhanden"
End if
On error Goto 0
...


Gruß, Daniel

AW: Workaround
04.03.2009 00:14:02
Daniel
Hi
keine Ahnung, ob das irgendwie geht, daher ich lass die Frage mal offen.
aber mit diesem Workaround könntest du dir u.U. behelfen:

Err = 0
On Error Resume Next
'--- hier eine Aktion einfügen, die zu einem Fehler führt, wenn der Rechner nicht online ist
'--- z.B. eine Datei aus einem Netzwerklaufwerk öffnen oder mit "ChangeDrive"
'--- ein Netzwerklaufwerk einstellen
if err = 0 then
Msgbox "Rechner Online"
Else
Msgbox "Keine Online-Verbindung vorhanden"
End if
On error Goto 0
...


Gruß, Daniel

Anzeige
AW: Per VBA prüfen ob Online?
04.03.2009 08:33:54
Oberschlumpf
Hi Tobias
Versuchs mal hiermit:
(alles in ein allgemeines Modul)

Private Declare Function InternetGetConnectedStateEx Lib "wininet.dll" (ByRef lpdwFlags As Long, _
ByVal lpszConnectionName As String, ByVal dwNameLen As Integer, ByVal dwReserved As Long) As Long
Dim sConnType As String * 255
Sub sbStart()
Dim Ret As Long
Ret = InternetGetConnectedStateEx(Ret, sConnType, 254, 0)
If Ret = 1 Then
MsgBox "Du bist online!"
Else
MsgBox "Du bist nicht online!"
End If
End Sub


Hilfts?
Ciao
Thorsten

noch eine Version
04.03.2009 09:13:24
Tino
Hallo,
habe hier auch noch eine Version im Angebot.
Diese war ursprünglich dafür gedacht IP-Adressen zu lesen,
etwas umgebaut kann man diese auch dafür nutzen.
PS: verwendet die Winsock dll, wird also wahrscheinlich nur bei Verbindungen funktionieren,
die übers Netzwerk kommunizieren. (Bsp. DSL)
Unter anderer Verbindungsmethode (Bsp. Modem), habe ich es nicht getestet.
Option Explicit
Private Declare Function gethostbyname Lib "WSOCK32.DLL" _
        (ByVal HostName As String) As Long
         
Private Declare Function WSAStartup Lib "WSOCK32.DLL" (ByVal _
        wVersionRequired As Long, lpWSAData As WinSocketDataType) _
        As Long

Private Declare Function WSACleanup Lib "WSOCK32.DLL" () As Long

Const WS_VERSION_REQD As Long = &H101&

Private Type HostDeType
    hName As Long
    hAliases As Long
    hAddrType As Integer
    hLength As Integer
    hAddrList As Long
End Type

Private Type WinSocketDataType
    wversion As Integer
    wHighVersion As Integer
    szDescription(0 To 128) As Byte
    szSystemStatus(0 To 256) As Byte
    iMaxSockets As Integer
    iMaxUdpDg As Integer
    lpszVendorInfo As Long
End Type

Private Function InitSocketAPI() As Long
    Dim Result As Integer
    Dim SocketData As WinSocketDataType
    InitSocketAPI = WSAStartup(WS_VERSION_REQD, SocketData)
End Function


Private Function Check_Connected(Name As String) As String
    Dim HostDeAddress As Long
  
    HostDeAddress = gethostbyname(Name)
    If HostDeAddress = 0 Then
        Check_Connected = "Keine Verbindung"
     Else
        Check_Connected = "Verbindung besteht"
    End If
   
End Function

Sub Pruefe_Verbindung()
  If InitSocketAPI = 0 Then
     MsgBox Check_Connected("www.google.de")
     Call WSACleanup
  Else
     MsgBox ("Socket Error! Die Verbindung kann nicht geprüft werden")
  End If
End Sub


Gruß Tino

Anzeige
AW: Per VBA prüfen ob Online?
04.03.2009 12:09:29
Tobias
Besten dank,
Ich hab jetzt Oberschlumpfens Lösung verwendet,
die funktioniert bei mir gut !

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige