Überprüfung auf Eingabe einer ganzen Zahl

  • VB6

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von GMoney.

    Überprüfung auf Eingabe einer ganzen Zahl

    Hey Leute,

    habe im Netz schon gesucht, doch leider keine passende Antwort dazu gefunden:

    Ich möchte im Textfeld eine Zahl eingeben ! -> it works

    jetzt möchte ich jedoch überprüft haben, ob es sich bei der eingegebenen Zahl um eine ganze Zahl (Integer) handelt, weil ich für dieses Prog keine Fließkommazahlen gebrauchen kann.

    Wir kläre ich jetzt ab, dass der eine Warnmeldung Msgbox, anything else ausgibt, die auffordert nur ganze Zahlen einzugeben?

    Danke
    Mit

    Visual Basic-Quellcode

    1. IsNumeric(bla)
    kann man prüfen, ob es eine Zahl ist, dies kann dann jedoch auch eine Zahl mit Komma sein. Mit

    Visual Basic-Quellcode

    1. InStr(1, bla, ",")=0
    kann man dann prüfen, ob ein Komma vorkommt. Beide Ausdrücke mit And verknüpfen und du hast die Bedingung für eine ganze Zahl.
    hallo GMoney,

    ich würde einfach die eingegebene zahl durch 1 teilen.
    in vb gibt es einen befehl zum teilen, welcher des rest einer division zurückgibt.

    Visual Basic-Quellcode

    1. Rest = A Mod 1

    wenn rest = 0 dann handelt es sich um eine ganze zahl.

    gruss

    mikeb69
    Hallo GMoney,

    oder mache so etwas:

    Visual Basic-Quellcode

    1. Private Function IsInteger(strText As String) As Boolean
    2. If IsNumeric(strText) Then IsInteger = CStr(Int(strText)) = strText
    3. End Function
    4. Private Sub Text1_LostFocus()
    5. If Not IsInteger(Text1.Text) Then
    6. MsgBox "Bitte gib eine ganze Zahl ein", vbInformation, "Fehlermeldung"
    7. With Text1
    8. .SetFocus
    9. .SelStart = 0
    10. .SelLength = Len(.Text)
    11. End With
    12. End If
    13. End Sub


    Gruß Markus

    EDIT:
    ok, die Modulo-Variante ist nett :) also evtl auch so:

    Visual Basic-Quellcode

    1. If IsNumeric(strText) Then IsInteger = strText Mod 1 = 0

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „alchimist“ ()

    Also, soviel verschiedene Möglichkeiten hätte ich nicht erwartet, das ist ja Wahnsinn

    Ich muss nur fairerweise noch mitteilen, dass ich absoluter Beginner bin - bzw. nur alle heilige Zeit mich mit VB beschäftige. Nur diesmal möchte ich das Buch, mit dem ich den intensiveren Einstieg wage, auch mal durcharbeiten, :)

    Danke auf jeden Fall sehr für die wertvollen Tips