none
Tabellen Textfeld in 2 Zahlenfelder aufteilen Access 2003

    Frage

  • Hallo

    ich habe ein Textfeld in einer Tabelle dieses beinhaltet Zeichen in der Formatierung

    100 - 150
    100-150
    10-15
    80-120

    100 / 150
    100/150
    10/15
    10
    100
    Null
    ""

    .......

    ich muss nun die Zahlen in zwei Zahlenfelder bekommen

    wenn nur eine Zahl vorhanden ist dann nur die eine

    die zahlen sind in irgendeiner form getrennt also - / oder nur ein leerzeichen

    Tabelöle öffnen durchlaufen ... wie unten kein problem nur wie bekomme ich diese daten auseinander

    Dim AD As Recordset
    Set AD = CurrentDb.OpenRecordset("meineTabelle", dbOpenDynaset, dbSeeChanges)
    Do Until AD.EOF
    AD.Edit

    AD.Update

    AD.MoveNext
    AD.Close
    Set AD = Nothing

    Mittwoch, 15. Februar 2012 16:19

Antworten

  • MCDPone wrote:
    > ich habe ein Textfeld in einer Tabelle dieses beinhaltet Zeichen in
    > der Formatierung
    >
    > 100 - 150
    > 100-150
    > 10-15
    > 80-120
    >
    > 100 / 150
    > 100/150
    > 10/15
    > 10
    > 100
    > Null
    > ""
    >
    > ich muss nun die Zahlen in zwei Zahlenfelder bekommen
    > wenn nur eine Zahl vorhanden ist dann nur die eine
    > die zahlen sind in irgendeiner form getrennt also - / oder nur ein
    > leerzeichen
    > ...
     
    Schnell runtergenudelt, könnte das so aussehen. Wenn du das
    öfter brauchst, dann natürlich Fehler behandeln, optimieren etc.
     
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim strSep As String
     
    Set db = CurrentDb
    Set rs = db.OpenRecordset("SELECT Text1, Zahl1, Zahl2 FROM Tabelle",
    dbOpenDynaset)
     
    Do Until rs.EOF
     
        strSep = ""
     
        If Len(Nz(rs!text1)) > 0 Then
     
            If InStr(rs!text1, "-") > 0 Then
                strSep = "-"
            ElseIf InStr(rs!text1, "/") > 0 Then
                strSep = "/"
            Else
                If InStr(rs!text1, " ") > 0 Then
                    strSep = " "
                End If
            End If
     
            rs.Edit
                If strSep = "" Then
                    rs!Zahl1 = rs!text1
                Else
                    rs!Zahl1 = Trim(Split(rs!text1, strSep)(0))
                    rs!zahl2 = Trim(Split(rs!text1, strSep)(1))
                End If
            rs.Update
     
        End If
     
        rs.MoveNext
    Loop
     
    --
    Servus
    Karl
    *********
    Access-FAQ: http://www.donkarl.com + SNEK
    SQL Server und .NET-Entwickler-Konferenz
    24./25.03.2012 Nürnberg, 28./29.04.2012 Hannover
     
     
     
    • Als Antwort markiert MCDPone Donnerstag, 16. Februar 2012 10:52
    Mittwoch, 15. Februar 2012 17:32