Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
String (Ip-Adresse) ToBit Converter für Excel
zurück: Nach Auswahl in Combobox Einträge in mehrere Zellen???? weiter: Mehrere Textdateien in Ordner einlesen und auf Sheet kopiere Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
StefanLausL
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 11:01
Rufname:

String (Ip-Adresse) ToBit Converter für Excel - String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Guten Morgen,

ich benötige Hilfe für folgendes Problem:

Benutzer füllen eine Excel-Sheet mit folgenden Informationen:

User | Ip-Adresse Von | Ip-Adresse Bis

123 | 192.168.1.2 | 192.168.1.100


Diese Informationen möchte ich in eine Datenbank speichern.
Allerdings werden hier nicht der String sondern der Bit-Wert gespeichert.
In diesem Fall währen das:

123 | -1062731518 | -1062731420


Hat jemand eine Idee wie ich die Eingabe der Ip-Adressen in eine Zahl umwandeln kann ?


Zum Hintergrund:

Auf eine Internetseite sollen nur Benutzer zugreifen, deren Ip-Adresse auch vorher registriert wurde.
Dafür wurde von mir ein Eingabeformular geschaffen mit folgender C# Funktion:

protected static int IpToInt(string ip)
{
byte[] ipBytes = IPAddress.Parse(ip).GetAddressBytes();
Array.Reverse(ipBytes);
return BitConverter.ToInt32(ipBytes, 0);
}

Da die Eingabe aber bei vielen Benutzern ziemlich zeitaufwendig ist, würde ich diese so vereinfachen das nur eine Excel Mappe gefüllt wird,
und ich deren IP dann per Skript in die Datenbank einlese.
Bei einzelnen Benutzern kann das Eingabeformular genutzt werden.


Hat jemand eine Idee für mich ?

Vielen Dank schon mal im Voraus !!!
falkh
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 11:17
Rufname:


AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

hi
also mir ist nix bekannt in VBA aber das soll nichts heissen

gegenfrage
wieso machst dus nicht in C#?

noch ne gegenfrage, wieso speicherst du nicht die IP normal in der datenbank dann müsstest du nichts konvertieren
StefanLausL
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 11:30
Rufname:

AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Die Funktion ist bereits in C# geschrieben.
Warum ich das in Excel machen will hatte ich bereits erläutert.

Der IP-Adressenvergleich ist einfacher zu handhaben wenn ich den Bereich als Zahl speichere.
So muss ich nur die IP des Users in eine Zahl umwandeln und feststellen ob sich diese Zahl im BereichVon und BereichBis befindet.

Es gibt doch in Excel die Funktion DezInBit oder so ähnlich.
Ich hatte die Hoffnung mir mit so einer Funktion ne Formel zusammen zu basteln.
falkh
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 11:41
Rufname:

AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

nein du hast mich falsch verstanden
warum machst du das ganze in VBA wenn du den code doch in c# schon hast?
du kannst deine liste doch auch in c# konvertieren, da wissen wir zumindest das und wie es geht

die excel funktion die du meinst ist DezInBin oder in Hex oder in Oct leider nicht in Bit
StefanLausL
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 11:48
Rufname:


AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Sorry ich steh auf der Leitung.

Auf meiner ASPX Seite wird die C# Funktion verwendet.

Ich wollte eigentlich nur auf die Schnelle die XLS per DTS in die SQL-Datenbank einlesen.
Da ich aber den Integer Wert benötige wollte ich die XLS um zwei Formeln erweitern und dann das Ergebnis in die Datenbank speichern.

Wenn das nicht gehen sollte dann bleibt mir nur das Speichern des Inhaltes in einer Temporären-Tabelle und dann das Umwandeln der Inhalte über C#.
Diesen Aufwand wollte ich mir eigentlich sparen. Crying or Very sad
falkh
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 12:05
Rufname:

AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

eben das wollte ich sagen,
aber eine liste von ips in c# einzulesen, umzuwandeln in bit und dann wieder rauszuschreiben ist doch auch kein aufwand
Gast



Verfasst am:
11. Jun 2010, 12:06
Rufname:

AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Hallo,

Zitat:
Es gibt doch in Excel die Funktion DezInBit oder so ähnlich.

ist mir leider nicht bekannt (Office 2003)


Als Formel wird das ein ziehmliches ungetün, weil es keine formel für split gibt

in VBA ist es relativ leicht zu realisieren, zB als UDF

Code:
Function DEZ2BIN(inp As String) As Double

teile = Split(inp, ".", 4)
faktor = 0
For k = UBound(teile) To 0 Step -1
    erg = erg + teile(k) * (2 ^ faktor)
    faktor = faktor + 8
Next

If erg > 2 ^ 31 Then erg = erg - (2 ^ 32)

DEZ2BIN = erg

End Function


Gruß
Peter
Gast



Verfasst am:
11. Jun 2010, 12:06
Rufname:

AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Hallo

Teste das mal:

Code:
Sub test()
    Debug.Print IP2BIN("192.168.1.2")
    Debug.Print IP2BIN("192.168.1.100")
    Debug.Print IP2BIN("0.0.1.0")
End Sub

Function IP2BIN(IP As String) As Long
IP2BIN = 0

Dim a As Variant, b As Double, i As Integer
   
    a = Split(IP, ".")
    If UBound(a) <> 3 Then Exit Function
   
    b = 0
    For i = 0 To 3
        b = b * 256 + CInt(a(i))
    Next i
    If b > 2 ^ 31 - 1 Then b = b - 2 ^ 32

IP2BIN = CLng(b)
End Function

Gruß
Ben
StefanLausL
Im Profil kannst Du frei den Rang ändern


Verfasst am:
11. Jun 2010, 12:34
Rufname:


AW: String (Ip-Adresse) ToBit Converter für Excel - AW: String (Ip-Adresse) ToBit Converter für Excel

Nach oben
       Version: Office 2007

Super !

Die Version von Ben ist genau das was ich brauche.


Vielen Dank nochmal an alle.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Summenprodukt mit Teilwert aus String rechnen 7 NicolasJ 589 21. Aug 2012, 14:14
Alex.S Summenprodukt mit Teilwert aus String rechnen
Keine neuen Beiträge Excel Formeln: Werte aus Matrix abgreifen und als String ausgeben 1 JohnWayne JR 285 10. Apr 2012, 12:18
Guenter_Steiner Werte aus Matrix abgreifen und als String ausgeben
Keine neuen Beiträge Excel Formeln: Muster aus String extrahieren - Dynamischer Start und Ende 3 XLSforDummy 398 02. Apr 2012, 13:15
Gast Muster aus String extrahieren - Dynamischer Start und Ende
Keine neuen Beiträge Excel Formeln: SVERWEIS??? / Suchkriterium ein Wert+Ein String 20 Excelhilfebraucher 1017 17. Jun 2011, 10:26
Excelhilfebraucher SVERWEIS??? / Suchkriterium ein Wert+Ein String
Keine neuen Beiträge Excel Formeln: Zellen verbinden - String zusammenführen 2 buckeT 909 24. Mai 2011, 10:14
buckeT Zellen verbinden - String zusammenführen
Keine neuen Beiträge Excel Formeln: Summewenn mit Teilstring & String 9 Lohse87 1230 02. Apr 2011, 09:11
silex1 Summewenn mit Teilstring & String
Keine neuen Beiträge Excel Formeln: Punkte in String an bestimmter Position setzen ... 3 bibob70 930 17. März 2011, 11:01
bibob70 Punkte in String an bestimmter Position setzen ...
Keine neuen Beiträge Excel Formeln: String in eine fremde Zelle ügertragen 2 _Karo_ 188 20. Jul 2010, 06:44
_Karo_ String in eine fremde Zelle ügertragen
Keine neuen Beiträge Excel Formeln: Wie kann man bestimmten String erkennen und abtrennen? 8 xlssearch 500 16. Mai 2010, 19:01
xlssearch Wie kann man bestimmten String erkennen und abtrennen?
Keine neuen Beiträge Excel Formeln: Zählen wenn in Spalte B = "String" und in Spalte D 4 V... 1091 08. Sep 2009, 11:59
V... Zählen wenn in Spalte B = "String" und in Spalte D
Keine neuen Beiträge Excel Formeln: String Auftrennen bei bestimmten Zeichen 3 Arkain 2215 14. Mai 2009, 09:38
Gast String Auftrennen bei bestimmten Zeichen
Keine neuen Beiträge Excel Formeln: String bilden mit Summewenn und vertikal??? 5 nickchanger 804 28. Aug 2008, 15:55
nickchanger String bilden mit Summewenn und vertikal???
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: CSS Forum