Rubrik: Variablen/Strings · String-Operationen | VB-Versionen: VB4, VB5, VB6 | 14.05.03 |
Korrekter Terminus bei Zahlenangaben Erzeugt korrektes Deutsch beim Verwenden von Variablenausgaben und Text. | ||
Autor: Bernd Hankel | Bewertung: | Views: 10.967 |
ohne Homepage | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Der nachfolgende Code erzeugt innerhalb von Textausgaben den korrekten Terminus bei 0, 1 oder mehr.
Beispiel: "Heute werden 5 Bäume gefällt", oder "Heute wird 1 Baum gefällt"
Leider liest man in manchen Programmen Konstrukte wie: "Heute werden 1 Bäume gefällt" - Hm??
Verwendung nach obigem Beispiel:
Dim nValue As Long nValue = 5 MsgBox "Heute " & _ KorrektTerminus(nValue, "", "wird", "werden", False) & " " & _ KorrektTerminus(nValue, "", "Baum", "Bäume", True) & " gefällt"
Code:
Public Function KorrektTerminus(ByVal anzahl As Long, _ ByVal fuerNull As String, _ ByVal fuerEins As String, _ ByVal fuerMehr As String, _ ByVal PrintValue As Boolean) As String Dim sText As String If PrintValue = True Then If anzahl = 0 Then sText = "kein " & fuerNull If anzahl = 1 Then sText = Trim$(Str$(anzahl)) & " " & fuerEins If anzahl > 1 Then sText = Trim$(Str$(anzahl)) & " " & fuerMehr Else If anzahl = 0 Then sText = fuerNull If anzahl = 1 Then sText = fuerEins If anzahl > 1 Then sText = fuerMehr End If KorrektTerminus = sText End Function