| |
|
Richtiges Eingeben von Prozentzahlen |
| Kurzinfo: |
 |
Eine Funktion die prüft, ob eine Prozentzahl
richtig eingegeben wurde und ggf. diese richtig umformatiert |
| Access-Version(en): |
|
Access97, 2000 und XP |
| Autor: |
 |
Manuela Kulpa |
| Homepage: |
 |
http://www.kulpa-online.de |
|
| | | | 
|
Auf der AP-Access-Tools Vol.1 finden Sie weitere 320
Tipps & Tricks sowie 250 Access-Beispiel/Anwendungen mit offenen Quellcode!
Die Access-Tools-CD mit über 400 MByte Inhalt - für Access- und VB-Entwickler
256 Access-Beispiele mit offenem Code
45 Add-Ins und ActiveX-Komponenten (Freeware)
16 VB-Projekt inkl. Source
321 Tipps & Tricks für Access und VB
Plus 11 Entwicklerversionen (9 davon mit Source!)
Plus 3 Vollversionen und
Plus riesiger Datenpool
Holen Sie sich jetzt Ihre AP-Access-Tools-CD zum Superpreis von nur EUR 24,95! | | | | |
|
Das Ausgabeformat: Prozentzahl wird sehr häufig falsch angezeigt, da die Benutzung des %-Zeichens bei der Eingabe häufig vergessen wird bzw. zu umständlich ist. Manche geben Prozentzahlen gewohnheitsmäßig als Dezimalzahl ein (z.B. 0,16 für 16%), andere wiederum lieber als ganze Zahl (hier also nur 16). Egal wie du das Feld formatierst, irgendjemand schafft es immer, es falsch einzugeben.
Wie kannst du es umgehen:- Erstelle in deinem Formular ein Textfeld und benenne das Feld z.B. in txtProzentfeld um.
- Stelle als Ausgabeformat Prozentzahl ein (Textfeldeigenschaft – Register Format)
- Öffne ein bestehendes Modul oder erstell ein neues Modul und füge folgende Funktion ein:
| Code: | Public Function CheckProzent(vWert As Variant) As Single
Dim sngWert As Single
' Wurde was übergeben
If Not IsNull(vWert) Then
' ist der Wert ganzzahlig?
If vWert > 1 Then
' teile ihn durch 100
sngWert = vWert / 100
Else
' ansonsten, belass den Wert so wie er ist
sngWert = vWert
End If
End If
' Übergabe Überprüfung
CheckProzent = sngWert
End Function
|
- Erstell anschließend für dein Textfeld folgende Ereignisprozedur (Textfeldeigenschaft – Register Ereignis – Nach Aktualisieren – dort auf die Aufbauenschaltfläche […] – Code-Generator):
| Code: | Private Sub txtProzentfeld_AfterUpdate()
Me!txtProzentfeld = CheckProzent(Me!txtProzentfeld)
End Sub
|
- Überprüfe es, indem du beide Varianten z.B. Eingabe 16 bzw. 0,16 ausprobierst.
Das war's schon! Weitere Informationen findest du in der allgemeinen
Onlinehilfe: Stichwort Programmieren in Access – Ereignisse bzw.
Grundlegende Programmierkonzepte. Denk bitte auch immer an die
[F1]-Taste (Wort markieren, F1-Taste betätigen), falls du nähere
Informationen zu den im Code verwendeten Befehlen benötigst!
Copyright 2000-2003 Microsys
Kramer– Alle Rechte vorbehalten - Der Download von Tipps und
Programmen von den Seiten www.access-paradies.de erfolgt auf eigene
Gefahr. Microsys Kramer haftet nicht für Schäden, die
aus der Installation oder der Nutzung von Tipps oder Software aus
dem Download-Bereich erfolgen. Trotz aktueller Virenprüfung
ist eine Haftung für Schäden und Beeinträchtigungen
durch Computerviren ausgeschlossen. Schadenersatzansprüche,
aus welchem Rechtsgrund auch immer, sind ausgeschlossen, wenn Microsys
Kramer nicht Vorsatz oder grobe Fahrlässigkeit zu vertreten
hat. Dies gilt auch für Ansprüche auf Ersatz von Folgeschäden
wie Datenverlust. |