tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
9
ZUGRIFFE
585
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Hallo zusammen,
    ich bearbeite Logfile Mit MS Access.
    Habe welche IPs, die so ein Format hat: 123.12.*
    Mein Problem: ich muss an der Stelle von * einnen wert zwischen 0 und 255 anfügen.
    Insgesamt habe ich etwa 800 solche ip's und kann die alle nicht händig bearbeiten

    Ich habe versucht mit "Ersetzen" Funktion versucht, kann es aber nur ein Wert ersetzen und keinen Bereich.

    Ich hoffe auf euere Helfe.

    lg
    Kiwani
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Musst du bei 123.12.* irgend wein Wert zwieschen 0 und 255 einfügen oder alle?

    Also hast du dann
    123.12.Zufallszahl1.Zufallszahl2

    Oder
    123.12.0.0
    und 123.12.0.1
    und 123.12.0.2
    bis 123.12.255.255
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Hallo Yaslaw,

    Sorry die Ip's haben die Foramt: 123.12.123.*. Also ich muss nur den Lezten Token bearbeiten

    also ich muss für den Letzten alle werte zwischen 0 und 255 anhängen. So soll es aussehen:

    1- 123.12.123.0
    2- 123.12.123.1
    3- 123.12.123.2
    .
    .
    .
    255- 123.12.123.255


    lg
    Ahmad
     

  4. #4
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Am besten über Arrays.
    Ich hab hier mal ein Beispiel.

    Code vb:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    
    Public Sub testips()
        Dim newIps()   As String
        
        'Funktion mit der ip-Adresse aufrufen
        newIps = getIps("12.138.18")
        'Alle Resultate ausgeben
        For Each ip In newIps
            Debug.Print ip
        Next ip
        
     
     
    End Sub
     
    Public Function getIps(ByVal inIpAddress As String) As String()
        Const C_MIN_IP_PART As Integer = 0
        Const C_MAX_IP_PART As Integer = 255
        Dim inipParts() As String
        Dim ipParts() As String
        Dim ipAddresses() As String
        Dim ipAddressesTemp() As String
        Dim ipFixPart As String
        
        'IP Adresse in seine Teile zerlegen
        inipParts = Split(inIpAddress, ".")
        
        'errechnen wiviele Parts vorhanden sind
        For ipPos = 0 To UBound(inipParts)
            If inipParts(ipPos) = "*" Then
                Exit For
            End If
            ReDim Preserve ipParts(ipPos)
            ipParts(ipPos) = inipParts(ipPos)
        Next ipPos
        'IP zusammensetzen ohne den *
        ReDim ipAddresses(0)
        ipAddresses(0) = Join(ipParts, ".")
        
        'Pro Stelle die nicht gefüllt ist
        For i = ipPos To 3
            ReDim ipAddressesTemp(C_MAX_IP_PART)
            'jede Zahl von 1 bis 255 anhängen
            For part = C_MIN_IP_PART To C_MAX_IP_PART
                For Each Address In ipAddresses
                    ipAddressesTemp(part) = Address & "." & part
                Next Address
            Next part
            'temporärer Array zurückschreiben und leeren
            ipAddresses = ipAddressesTemp
            Erase ipAddressesTemp
        Next i
     
        'Array mit allen generierten ip-Adressen zurückgeben
        getIps = ipAddresses
     
    End Function
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  5. #5
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Vielen Herzlichen Dank.

    Ich habe aber leider überhaupt keinen Plan von VBA..
    Also ich habe dein Code in einem Modul eingegeben.

    Die IPs Stehen in einer Tabelle Name:tbl_stern, Feldname: IP.
    wie kann ich den Code zum laufen bringen****?

    Vielen Dank
    lg
    Kiwani
     

  6. #6
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Zum laufen bringen ist das eine (Suche mal nach Recordset). Das andere ist, die generierten ips, was willst du mit denen machen?
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  7. #7
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Hallo,
    die generierten IPs werden mit einer anderen Tabelle verglichen und verknüpft.
    Das sind die User IPs, damit einer User Auswertung gemacht werden kann.

    Ich setze mich mit dieser Recordset Geschichte auseinander.
    Ich hoffe, dass ich es hinkriege?

    Also ich danke dir herzlich für deine Helfe.
    lg
    Kiwani
     

  8. #8
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Hallo Yaslaw,

    Das ist so umfangreich mit Access... ich komme nicht hinterher.

    Also den Code, den du mir geschrieben hast, soll in einem Formular eingegeben oder?

    Wenn ich auf_click drucke kommt eine Fehlermeldung, dass ein End Sub fehlt********

    Bitte rette mich..

    Danke
    Kiwani
     

  9. #9
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Sorry, ich habe weder die Zeit noch die Lust hier einen MS Access VBA Einführungskurs zu geben. Es gibt genug Einführungsliteratur im Web und in Buchform.
    Wenn du nicht weisst, was das bedeutet wenn ein 'End Sub' fehlt, dann vergiss vorerst am besten was ich hier gepostet habe und Lerne zuerst die Grundlagen.

    Wenn du eine fertige Lösung haben willst, dann verschieben wir das ganze in die Stellenausschreibungen.
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  10. #10
    Kiwani Kiwani ist offline Rookie
    Registriert seit
    May 2011
    Beiträge
    7
    Hallo Yaslaw,
    Vorab möchte ich mich nocheinmal für deine Helfe bedanken.
    Ich habe von vorn an geschrieben, das ich überhaupt keine VBA Erfahrung habe.
    Ich versuche jetzt seit 2 Tagen deinen Code zu verstehen..?
    Also in deinem Code ist eine Klasse (testips) und die Funktion (getips).
    Mit dem recordset kann mann eine Tabelle, Abfrage offnen.
    Meine Frage wie kann ich meine Tabelle, die die Ips enthält an dem code binden****

    Danke
    Kiwani
     

Ähnliche Themen

  1. » Access Access 2007
    Von Willi_Kaiser im Forum Office-Anwendungen
    Antworten: 9
    Letzter Beitrag: 04.08.11, 12:11
  2. Access 2007
    Von svennson im Forum Java
    Antworten: 2
    Letzter Beitrag: 24.02.09, 23:57
  3. Access 2007: Dropdown
    Von MastaDaDesasta im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 10.12.08, 23:59
  4. [Access 2007] Fehlermeldung
    Von elmyth im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 14.07.08, 15:55
  5. C# und Access 2007
    Von Paulchen29 im Forum .NET Café
    Antworten: 0
    Letzter Beitrag: 06.12.07, 10:05