kiwani
Goto Top

Zeichen und Zahl in Access aus einer Spalte auslesen

Hallo zusammen

Ich bearbeite grade Logfils und muss ich aus einer Spalte(URL) der Etwa so aussieht:

/suche/suchformular.html?&sessionid=BB278149056F591CD858995BFA908C9B&goto=ResultDisplay&lang=de&L=0&formtype=mixed&id=186&startsearch=true&sort=year_descending&js=yes&ip=xxx.xxx.xx.xx&hash=0bed9&goto=ResultDisplay&PHPSESSID=3317f11f17aa36247788f0fce3334bf1&listid=&useruid=0&hitsperpage=10&&ssoar=&showdocid=csa-sa-200610221&formtype=mixed&lang=de&L=0&pagecount=1

ich muss die IPs aus dem Link mit MS Access auslesen können.

ich habe versucht mit mehrere Access Funktion wie (Links(),....) , ist aber leider nicht möglich, weil die string Länge immer unterschiedlich vorkommt.

Bestimmt geht es mit einer vba Funktion, kenne ich mich aber leider net so tolle mit vba.

Bitte um Helfe.

lg
Kiwani

Content-Key: 166804

Url: https://administrator.de/contentid/166804

Printed on: April 18, 2024 at 08:04 o'clock

Member: bastla
bastla May 24, 2011 at 11:22:08 (UTC)
Goto Top
Hallo Kiwani!

Wenn die URL immer nach diesem Schema aufgebaut ist, könntest Du eine VBA-Function der Art
Function GetIP(URL)
GetIP = Split(Split(URL, "ip=")(1), "&")(0)  
End Function
dafür verwenden ...

Es wird zunächst der gesamte String anhand von "ip=" geteilt und mit dem Index 1 der zweite entstehende Teil weiter verwendet. Dieser Teil wird nochmals (dieses Mal anhand von "&") gesplittet und daraus der erste Teil (Index 0) als Ergebnis zurückgegeben. Dabei wird vorausgesetzt (und daher derzeit nicht überprüft), dass tatsächlich "ip=" im Parameter URL enthalten ist ...

Grüße
bastla
Member: Kiwani
Kiwani May 24, 2011 at 12:08:23 (UTC)
Goto Top
Vielen herzlichen Dank,


also die Abfrage öffnet sich und zeigt die IPs und gleich zeitig kommt die Fehlermeldung:
Laufzeitfehler '9'
Index außerhalb des gültien Bereich.

Anscheinend sind noch welche ohne IPs, oder?
Member: bastla
bastla May 24, 2011 at 12:48:52 (UTC)
Goto Top
Hallo Kiwani!
Anscheinend sind noch welche ohne IPs, oder?
Versuch es damit:
Function GetIP(URL)
Delim1 = "ip="  
Delim2 = "&"  
If InStr(URL, Delim1) > 0 Then
    GetIP = Split(Split(URL, Delim1)(1), Delim2)(0)
Else
    GetIP = "Keine IP gefunden"  
End Function
Zu beachten wäre übrigens, dass bei der Suche nach "ip=" Groß-/Kleinschreibung unterschieden wird ...

Grüße
bastla
Member: Kiwani
Kiwani May 24, 2011 at 12:54:17 (UTC)
Goto Top
Funktioniert einwandfrei.

Ich danke dir ganz herlich.
lg
Kiwani