vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 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
Eingabeüberprüfung 
Autor: Aglarana
Datum: 20.11.04 20:06

Hallo,
also ich hab 2 Fragen.Es geht darum Werte die von einem User eingegeben werden direkt zu überprüfen und nur bestimmte Angaben in einem Wertebereich zuzulassern.


Private Sub txtEingabe_Change()
 
If IsNumeric(txtEingabe.Text) = False Then
   txtEingabe.Text = "1"
   Exit Sub
End If
If txtEingabe.Text > 127 Then txtEingabe.Text = 127
If txtEingabe.Text < 1 Then txtEingabe.Text = 1
If txtEingabe.Text = "" Then txtEingabe.Text = "1"
 
End Sub
Das klappt soweit schonmal ganz gut. Allerdings können jetzt noch Werte wie zb 000009 eingegeben werden und + oder - Zeichen. Das möchte ich eigentlich verhindern und aus 0009 soll dann direkt 9 werden.
1. Wie könnte ich jetzt am besten die führenden Nullen raustrennen sowie das + und - Zeichen ?

Jetzt im zweiten Problem sind 2 Textfelder miteinander "gekoppelt". Im ersten Textfeld
soll der User Zahlen von zb 1-100 eingeben können wodrauf dann im zweiten Textfeld
der minimalWert eines Wertebereichs angezeigt wird. Zb wid im ersten Textfeld 2 eingegeben soll 500 im zweiten Textfeld angezeigt werden, bei 3 dann zb 1000. Die Zahl 2 hat den Wertebereich von 500 - 999 die Zahl 3 von 1000 bis 1999 zb.
Andersherum soll aber auch wenn im zweiten Textfeld der Wert 800 eingegeben wird im ersten 2 angezeigt werden, und bei 1800 zb dann 3.

Private Sub txtEingabe2_Change()
 
If IsNumeric(txtEingabe2.Text) = False Then
   txtLevel.Text = "0"
   Exit Sub
End If
 
If txtEingabe2.Text > 0 And txtEingabe2.Text < 500 Then txtLevel.Text = 1
If txtEingabe2.Text > 500 And txtEingabe2.Text < 999 Then txtLevel.Text = 2
If txtEingabe2.Text > 1000 And txtEingabe2.Text < 1999 Then txtLevel.Text = 3
End Sub
Damit tritt aber der Fehler auf, daß wenn zb im Textfeld 2 , 800 eingegeben wird, zwar im Textfeld 1 der Wert 2 angezeigt wird aber der Wert in Textfeld 2 wird durch die Änderung in Textfeld 1 wieder auf 500 zurückgesetzt.
2. Wie kann ich dieses Zurücksetzen verhindern, so das der eingegebene Wert erhalten bleibt in Textfeld 2 und sich nur in Textfeld 1 ändert ?


So, danke schonmal fürs Lesen, ich hoffe ich hab verständlich genug mein Problem erklärt .

MfG
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Eingabeüberprüfung407Aglarana20.11.04 20:06
Re: Eingabeüberprüfung192beko2420.11.04 20:16
Re: Eingabeüberprüfung230wincnc20.11.04 20:52

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