Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1636to1640
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

IP Adresse abfrage

IP Adresse abfrage
07.08.2018 23:32:07
Tobias
Hallo,
kann man die iP Adresse des Rechners abfragen auf dem die Excel Datei geöffnet wurde?
Und sagen wenn iP Adresse = 192.168.0.44 dann Range("D5") = 1 Sonst 2
Liebe Grüße
TObias

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

Betreff
Datum
Anwender
Anzeige
AW: IP Adresse abfrage
07.08.2018 23:54:04
Werner
Hallo Tobias,
die Suche hier im Forum hilft dir weiter. War gleich der zweite Treffer - der Code ist von Tommy.
Den kompletten Code in ein allgemeines Modul einfügen und das Makro "Start" ausführen. Die IP wird in einer Messagebox ausgegeben und der entsprechende Eintrag im Blatt "Tabelle1" (ggf. anpassen) in der Zelle D5 vorgenommen.
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source  _
As Any, ByVal Length As Long)
Public Declare Function GetIpAddrTable Lib "IPHlpApi" (pIPAdrTable As Byte, pdwSize As Long,  _
ByVal Sort As Long) As Long
Const MAX_IP = 5 'To make a buffer... i dont think you have more than 5 ip on your pc..
Type IPINFO
dwAddr As Long ' IP address
dwIndex As Long ' interface index
dwMask As Long ' subnet mask
dwBCastAddr As Long ' broadcast address
dwReasmSize As Long ' assembly size
unused1 As Integer ' not currently used
unused2 As Integer '; not currently used
End Type
Type MIB_IPADDRTABLE
dEntrys As Long 'number of entries in the table
mIPInfo(MAX_IP) As IPINFO 'array of IP address entries
End Type
Type IP_Array
mBuffer As MIB_IPADDRTABLE
BufferLen As Long
End Type
Public Function ConvertAddressToString(longAddr As Long) As String
Dim myByte(3) As Byte
Dim Cnt As Long
CopyMemory myByte(0), longAddr, 4
For Cnt = 0 To 2
ConvertAddressToString = ConvertAddressToString + CStr(myByte(Cnt)) + "."
Next Cnt
ConvertAddressToString = Left$(ConvertAddressToString, Len(ConvertAddressToString) - 1)
End Function
Public Sub Start()
Dim Ret As Long, Tel As Long
Dim bBytes() As Byte
Dim Listing As MIB_IPADDRTABLE
Dim IPtext As String
On Error GoTo END1
GetIpAddrTable ByVal 0&, Ret, True
If Ret 
Gruß Werner
Anzeige
AW: IP Adresse abfrage
08.08.2018 05:25:49
Luschi
Hallo Tobias & Werner,
dieser Code liefert mir das falsche Ergebnis:
- es wird nur die localhost-Adresse 127.0.0.1 ausgelesen
- und selbst die ist noch falsch da nur 127.0.0. ankommt
- Ursache: For Cnt = 0 To 2 muß bis 3 laufen und nicht bis 2
Aber egal: falsch ist & bleibt falsch!
Eine korrekte Lösung, die man noch anpassen müßte, habe ich hier gefunden:
http://www.office-loesung.de/ftopic287145_0_0_asc.php
Der Zugriff auf IpAddrs(UBound(IpAddrs)) würde ausreichen, diese IP-Adresse in eine Zelle zu schreiben.
Gruß von Luschi
aus klein-Paris
Anzeige
Fehlermeldung da 64bit
08.08.2018 21:33:01
Tobias
Hallo,
vielen Dank für die Infos.
Ich habe die Empfehlung von der office-lösung Seite versucht.
Bekomme aber eine Fehlermeldung " Fehler beim Kompilieren ... der Code muss für die Verwendung auf 64bit Systemen aktuallisiert werden .. "
Ich kann das aber nicht :(
Kann mir jemand helfen?
Gruß
TObias
AW: Fehlermeldung da 64bit
09.08.2018 10:20:18
Planlos
Hallo
versuch
Dim o As Object
Dim v As Variant
For Each o In GetObject _
( _
"winmgmts:\\.\root\CIMV2" _
).ExecQuery _
( _
"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True", , 48 _
)
v = o.DefaultIPGateway
If VarType(v) > &H2000 Then
v = o.IPAddress
Debug.Print v(0) 'Ausgabe in den Direktbereich
End If
Next

Anzeige
Die IP Adresse würde ich entweder...
08.08.2018 07:55:05
Case
Hallo, :-)
... über "cmd /c ipconfig" abrufen: ;-)
IPCONFIG...
Über "StdOut.ReadAll" lässt sich das Ganze auch direkt ausgeben (also kein Umweg über Ausgabe in Datei).
Oder über: ;-)
Windows Management Instrumentation Command...
ShellAndWait "wmic /output:clipboard nicconfig where IPEnabled=True get ipaddress"
Das ist jetzt nicht ausgearbeitet, aber die nötigen Routinen sind ja in den Links!
Servus
Case

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige