Tom Schwenke Posted February 29 Share Posted February 29 Ich benötige eine Möglichkeit eine Zahl "in Worten" im Bericht eintragen zu können. Im Idealfall noch folgendem Prinzip: Eingabe: 127,34 Anzeige: Einhundertsiebenundzwanzig 34/100 Hat jemand eine Idee wie ich das lösen kann? Vielen Dank und Liebe Grüße 1 Link to comment Share on other sites More sharing options...
_Moritz_ Posted February 29 Share Posted February 29 Das ist machbar (man müsste vorab mal klären, wie groß die Zahl maximal werden könnte; das limitiert die Komplexität bzw. Umfang der Lösung), wird aber eine ekelhaft lange Formel (mit u.U. Auswirkungen auf die Performance der smap)… jedenfalls fällt mir nix Knackiges ein. Anyone else? Link to comment Share on other sites More sharing options...
Tom Schwenke Posted February 29 Author Share Posted February 29 vor 23 Minuten schrieb Moritz: (man müsste vorab mal klären, wie groß die Zahl maximal werden könnte; das limitiert die Komplexität bzw. Umfang der Lösung) Max 3 Stellen vor dem Komma und 2 dahinter Link to comment Share on other sites More sharing options...
Solution _Moritz_ Posted February 29 Solution Share Posted February 29 Du müsstest dir halt ein Konstrukt aufbauen, dass bei maximal 3 Stellen vor dem Komma Folgendes erfüllt: Prüfung (IF), ob die Zahl größer 99, wenn ja, dann nimm die erste Stelle und ersetze 1 mit "Eins" bis 9 mit "Neun" + der statische Text "hundert"; falls die Prüfung fehlschlägt, bleibt dieser Teil leer. Umwandlung der letzten Stelle (vor dem Komma), auch wieder 1 = "ein" bis 9 = "neun" + der statische Text "und". Umwandlung der vorletzten Stelle (die Zehnerstelle) von 1 = "zehn", via 2 = "zwanzig" bis 9 = "neunzig". Es muss außerdem noch eine Prüfung für die Zahlen 11 ("elf") und 12 ("zwölf") stattfinden, so dass das auch mit abgedeckt ist. Für die Entwicklung des Ganzen würde ich wahrscheinlich sogar auch erst einmal mit drei Bausteinen (Baustein-IDs "Hunderter", "Zehner" und "Einer" o.ä.) und in einem finalen Result-Feld dann alles per CONCAT() zusammenfügen. 1 1 Link to comment Share on other sites More sharing options...
Manuel Rühl Posted February 29 Share Posted February 29 Wollt Ihr Euroschecks bedrucken oder was macht ihr damit? 😂 Ich habe gerade mal probiert, mit STRG+F9 die Funktion "DollarText" in Word zu nutzen. Aber { {{bricks.ResultNumber}} \*DollarText} kann man leider nicht dynamisch befüllen... 3 Link to comment Share on other sites More sharing options...
Bülent Erbas Posted February 29 Share Posted February 29 So sieht das ChatGPT: # Pseudocode zur Umwandlung einer Zahl in ihren deutschen Textwert EINGABE: zahl # Überprüfung und Verarbeitung der Hunderterstelle IF zahl >= 100 THEN hunderter = zahl / 100 hunderterText = "" SWITCH hunderter CASE 1: hunderterText = "Einhundert" CASE 2: hunderterText = "Zweihundert" CASE 3: hunderterText = "Dreihundert" # Füge weitere Fälle bis 9 hinzu END SWITCH ELSE hunderterText = "" END IF # Berechnung der Zehner- und Einerstelle ohne die Hunderterstelle rest = zahl % 100 # Überprüfung und Verarbeitung für spezielle Fälle 11 und 12 IF rest == 11 THEN restText = "elf" ELSE IF rest == 12 THEN restText = "zwölf" ELSE # Verarbeitung der Zehnerstelle zehner = rest / 10 zehnerText = "" SWITCH zehner CASE 2: zehnerText = "zwanzig" CASE 3: zehnerText = "dreißig" # Füge weitere Fälle bis 9 hinzu END SWITCH # Verarbeitung der Einerstelle einer = rest % 10 einerText = "" SWITCH einer CASE 1: einerText = "ein" CASE 2: einerText = "zwei" # Füge weitere Fälle bis 9 hinzu END SWITCH # Zusammenfügen von Zehner- und Einerstelle mit "und" falls nötig IF einer > 0 AND zehner > 0 THEN restText = einerText + "und" + zehnerText ELSE restText = einerText + zehnerText END IF END IF # Zusammenfügen des finalen Textes finalerText = hunderterText + restText AUSGABE: finalerText 4 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now