PDA

Vollständige Version anzeigen : Zahlenformate umwandeln (Betragseingabe)


Fatman
15.01.2003, 18:44
Hallo ihr »Wissenden«,

Wie mache ich aus einer vorhandenen Zahl (als String) eine Zahl mit zwei Nachkommastellen?

Problem ist das die Zahl (als String) unter Umständen schon als Kommazahl vorliegt. Rundungen dürfen nicht erfolgen.

Beispiel:

123 muss 1,23 ergeben
1,23 muss auch 1,23 ergeben

wie löse ich das sauber? Bin für alle Tipps dankbar.

Ciao Ralf

Erich Weiss
15.01.2003, 20:40
Hallo,

du kanst mit der Funktion "Rechts" jederzeit einen bestimmten Anteil von Stellen auswählen.
Erstelle eine Abfrage, füge ein berechnendes Feld zB Kommastelle ein und dann die Formel ein.

Kommastellen:Rechts(<Feldname>;2)

Indem neuen Feld stehen dann immer nur die letzten zwei stellen.

In einer weiteren Aktion kannst du dann die ersten Stellen separieren.

Vorkomma:Wenn(Länge(<Feldname>)=2;0;Länge(<Feldname>)-2)

Danach mußt du dein neuen werte zusammensetzen.

NeuerWert:<Feldvorkomma>&,&<Feldnachkomma>

Versuch es

Gruß EW

Nouba
15.01.2003, 20:59
Hallo Ralf,

wenn ich die Regel ableiten darf, dass, wenn kein Komma auftritt, durch 100 geteilt werden soll, dann probiere mal<pre><font size="2">SELECT<br> IIf(InStr([Zahlentext],",")>0,CDbl([Zahlentext]),CDbl([Zahlentext])/100) AS Zahl<br>FROM DeineTabelle</font></pre>

Fatman
16.01.2003, 07:38
Danke für die Antworten :) .

Mit InStr habe ich es wie folgt hinbekommen:

If InStr([zahl], ",") = 0 Then
zahl = zahl / 100

Danke.

Ciao Ralf