vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!? 
Autor: manyki
Datum: 16.08.04 13:02

Vielleicht so:
Sub NurZahl(Textfeld As TextBox, KeyAscii As Integer)
With Textfeld
 Select Case KeyAscii 'Übergebener Asciicode
'----------------------------------------------------------------
  Case 8, 48 To 57 'Backtaste, Tasten 0 bis 9
   If Len(Textfeld.Text) < 4 Then
      KeyAscii = KeyAscii
   Else
 
      If KeyAscii = 44 Or KeyAscii = 46 Then
        KeyAscii = 44
      Else
        If Len(Textfeld.Text) <= 6 And InStr(1, Textfeld.Text, ",") = 5 _
        Or KeyAscii = 8 Then
          KeyAscii = KeyAscii
        Else
          KeyAscii = 0
        End If
      End If
   End If
'----------------------------------------------------------------
  Case 45 'Taste "-"
   If .SelStart = 0 Then 'Nur wenn Cursor am Anfang steht
     If Left(.Text, 1) = "-" And .SelLength = Len(.Text) _
     Then 'Minus-Zeichen bereits da, aber Text ist markiert
      KeyAscii = KeyAscii '- zulassen
     ElseIf Left(.Text, 1) = "-" Then  'Minus-Zeichen ist bereits da
      KeyAscii = 0 '- nicht zulassen
     End If
   Else 'Wenn Cursor nicht am Anfang steht
    KeyAscii = 0 '- nicht zulassen
   End If
'-----------------------------------------------------------------
  Case 44, 46 'Tasten Komma, Punkt
   Select Case InStr(1, .Text, ",")
    Case Is > 0 'Wenn Komma bereits da ist, kann kein
                'zweites eingegeben werden(KeyAscii=0)
                'es sei denn, der Text ist selektiert.
     If .SelLength = Len(.Text) Then
      KeyAscii = KeyAscii
     Else
      KeyAscii = 0
     End If
    Case Else 'Wenn nicht wird Punkt zu Komma gemacht.
     KeyAscii = 44
   End Select
'-----------------------------------------------------------------
  Case Else  'Alle anderen Zeichen
   KeyAscii = 0 '- nicht zulassen
 End Select
End With
End Sub

Gru? aus dem Norden
manyki

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
textfeld Zahleneingabe -> 2tes Komma verhindern!?2.038McMic15.08.04 14:32
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.895travis2415.08.04 15:12
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.965manyki15.08.04 16:22
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.959McMic16.08.04 08:53
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.904manyki16.08.04 13:02
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.760McMic16.08.04 17:37
Re: textfeld Zahleneingabe -> 2tes Komma verhindern!?1.844McMic17.08.04 16:09

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel