2.3k Aufrufe
Gefragt in Tabellenkalkulation von acerider Einsteiger_in (59 Punkte)
Liebes Supportnet,

in Excel möchte ich gerne aus einem Kommawert eine fünfstellige Zahl ohne Komma generieren. Bei einigen Zahlen soll zwischen Komma und der letzten Ziffer eine "0" eingefügt werden.

Übersicht, welche Zahlen vorliegen und was daraus werden soll:

240,1 => 24001
230,5 => 23005
230,10 => 23010
240,14 => 24014
etc.

Es kommen jede Woche neue Werte hinzu und werden an die bestehenden Zahlen angehängt.

Hat jemand eine Idee?

Viele Grüße

AceRider

9 Antworten

0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo,

das würde z.B. mit =RUNDEN(A1*100;0) gehen, wenn diese komische Bedingung mit der zwischengeschobenen Null nicht wäre.

Bist du dir ganz sicher, das das korrekt ist, denn eigentlich sollte die Quelle dieser Zahlen doch in der Lage sein Zehntel von Hundertsteln zu unterscheiden und in der richtigen Position auszugeben.

240,1 und 240,10 wären beispielsweise vom Wert her identisch, müssten aber lt. deiner Vorgabe dann als 24001 und 24010 ausgegeben werden, was für mich einfach nur unlogisch ist. Genauso, wie 230,5 als 23005 dann plötzlich kleiner wäre als
230,10 mit der Ausgabe 23010, obwohl es sich bei den ursprünglichen Werten genau umgekehrt verhält.

Gruß
Kalle
0 Punkte
Beantwortet von acerider Einsteiger_in (59 Punkte)
Hallo Kalle,

vielen Dank für Deine Antwort.

Es sind keine Zahlen, die ich in dem Sinne weiterverarbeiten möchte oder zum Rechnen benötige sondern Zuordnungen. In dem Fall stehen die ersten drei Ziffern für eine Einheit und die letzten beiden Ziffern für die Untereinheit.

Diese Syntax benötige ich für eine richtige Zuordnung.

Viele Grüße

AceRider
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo AceRider,

teste mal ob Du diese Formel verwenden kannst

=WENN(LÄNGE(WECHSELN(A1;",";""))=4;GANZZAHL(A1)&"0"&RECHTS(A1;1);WECHSELN(A1;",";""))

Gruss
Rainer
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo noch mal,

vergiss meine Formel, nimm diese

=GANZZAHL(A1)&TEXT(TEIL(A1;FINDEN(",";A1)+1;99);"00")

Gruss
Rainer
0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo Rainer,

es klappen eigentlich mit beiden Formeln, mit einer Untereinheit '0' kommen aber beide nicht zurecht. Da müsste AceRider sich nochmal dazu äußern, ob die u.U auch vorkommen könnte.

Gruß
Kalle
0 Punkte
Beantwortet von acerider Einsteiger_in (59 Punkte)
Hallo Kalle,
hallo Rainer,

mit der von Rainer beschriebenen Antwort klappt es hervorragend, ich bin doch echt immer erstaunt, dass es für vermeintliche unlösbare Aufgaben, doch eine Lösung gibt.

Vielen Dank

Ace Rider
0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo Ace Rider,

nur dass ich dabei lediglich zu näheren Erläuterungen 'angeregt' habe, die Markierung als 'Lösung' hättest du bei Rainers Formel setzen sollen.

Gruß
Kalle
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo zum letzten mal,

anbei noch ein Makro, welches den Wert direkt bei der Eingabe umwandelt.
Eingestellt sind Eingaben in Spalte A.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 1 Then
Target.Value = Int(Target.Value) & _
Format(Mid(Target.Value, InStr(Target.Value, ",") + 1, 2), "00")
End If
Application.EnableEvents = True
End Sub


@ Kalle
Meine Formeln funktionieren auch mit einer Null nach dem Komma.
Ich bin von vorgegebenen Textwerten ausgegangen.

Gruss
Rainer
0 Punkte
Beantwortet von acerider Einsteiger_in (59 Punkte)
Hallo Kalle,
hallo Rainer,

sorry, mit dem falschen Bewerten! Nutze das Forum nicht so regelmäßig, kannte diese Funktion gar nicht und habe nur gelesen "Lösung gelöst"- erst später habe ich verstanden, dass man die Antwort markieren soll, die zur Lösung beigetragen hat. Ja, ja, wer lesen kann.

Daher nochmal besonderen Dank an Rainer!

Die Lösung via VBA funktioniert auch, aber nicht wenn ich Daten in die Tabelle hereinkopiere.

Viele Grüße & ein schönes Wochenende!

Stefan
...