Entwickler-Ecke
Sonstiges (Delphi) - Betrag in Worten
jamany - So 16.03.03 15:29
Titel: Betrag in Worten
Wo finde ich denn eine Funktion, die einen Zahlenbetrag in Worte umwandelt?
mars - So 16.03.03 15:34
IntToStr() falls es ein Integer ist, sonst zB FloatToStr(). In der OH findest du auch weitere Konvertierungsfunktionen in Strings.
derDoc - So 16.03.03 15:51
Ich glaube du willst aus 2 --> zwei machen oder täusche ich mich da?
Also eine offizielle Funktion gibt es dafür nicht, aber ich glaube so könnte man das lösen:
Du hast die Zahl 2541,25
und fängst mittels case an 2 --> zwei
dann ermittelst du den Abstand zum Komma 3 Zahlen dazwischen --> tausend
wieder case 5 --> fünf
wieder Abstand zum Komma 2 --> hundert
wenn Abstand zum Komma = 2 dann
case letzte Zahl vor dem Komma 1 --> ein
case vorletzte Zahl vor dem Komma 4 -->undvierzig
if , then ' Komma '
case nächste Zahl 2 --> zwei
case nächste zahl 5 --> fünf
ende wenn nächste Zahl > length
2541,25 --> zweitausendfünfhunderteinundvierzig Komma zweifünf
1. Das ist verdammt viel Arbeit
2. Das hier oben ist nur ein stilisierter Code
3. eigentlich musst du das ganze mit case vorher auf den Abstand zum Komma überprüfen und für jeden Fall neu schreiben, den 1,25 --> eins Komma zweifünf und 21,25 --> einundzwanzig Komma zweifünf außerdem 0,25 --> null Komma zweifünf und 100,25 --> einhundert Komma zweifünf.
4. Ich hoffe es war verständlich.
jamany - So 16.03.03 17:22
Titel: danke
ooops, habe ich dann wohl nicht in den FAQs gesehen...
trotzdem danke an derDoc für die Überlegung... War auch genauso gemeint...
jamany - So 16.03.03 17:40
Titel: wie einbinden?
Das will irgendwie nicht klappen...
Ich brauche die Funktion in meiner Unit4 die zu Form4 gehört. Bei einem Klick auf einen Button, soll der Wert in Worte umgewandelt werden. Wie muss ich die Funktion einbinden?
Ich habe die Funktion in meine Unit4 gleich nach
Quelltext
1: 2: 3:
| implementation
{$R *.dfm} |
eingebunden
In die procedure für den Button habe ich dann
Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure TForm4.Button2Click(Sender: TObject);
var betrag:string; begin betrag := BetragInWorten(123,45); Label1.Caption:=betrag; end; |
Was mache ich falsch? Ich bekomme die Fehlermeldung
[Error] Unit4.pas: Undeclared identifier: 'BetragInWorten'
derDoc - So 16.03.03 17:51
Hast du es auch oben unter private eingebaut?
Tino - Mo 17.03.03 10:44
| derDoc hat folgendes geschrieben: |
| Hast du es auch oben unter private eingebaut? |
Das ist nicht notwendig.
| jamany hat folgendes geschrieben: |
| Was mache ich falsch? |
Poste doch mal die ganze Unit (wenn diese nicht zu lang ist).
Gruß
Tino
Pyr0cracker - Mo 17.03.03 11:53
guck mal in den easy delphi helper 2000, da stehts drinne.
gruß
jamany - Mo 17.03.03 12:23
In private einbauen hat nichts gebracht.
Ich hatte dann die Funktion sowohl in der Hauptunit, als auch in meiner Unit4 eingebaut und dann ging's. Keine Ahnung warum.
Trotzdem danke an alle!
derDoc - Di 18.03.03 16:41
Schreibe doch deinen Code mal hierher. Ich habe das mal getestet und bei mir klappt das einwandfrei.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!