Textfeld in Kommazahl umwandeln
#1
Hallo zusammen,

ich habe ein kleines Problem und komme nicht wirklich weiter. Dachte, dass ich die Lösung schon habe aber da hatte ich mich getäuscht und langsam sehe ich vor lauter Bäumen den Wald nicht mehr.

Ablauf:
Mein Excel Dokument besteht aus 3 Reitern.
Im 1 Reiter werden die Daten aus einer DB via Addin importiert.
In einer Spalte ist der Betrag als Textfeld enthalten (Bsp.: 000000000027615) und dieser sollte im 3 Reiter als dezimal-Zahl dargestellt werden.
Mein aktueller Ansatz ist über einen Zwischenreiter zu gehen, da im 1 Reiter die Daten immer wieder gelöscht und neu importiert werden.
Im Zwischenreiter werden im Textfeld enthaltene "0" eliminiert
=WENN(ISTFEHLER(WERT('Export AS400'!K1));'Export AS400'!K1;TEXT(WERT('Export AS400'!K1);"0"))

Im 3ten Reiter habe ich für die Dez-Zahl folgende Formel
=WECHSELN(Umrechnung!A1;RECHTS(Umrechnung!A1;2);","&RECHTS(Umrechnung!A1;2))

Mein Ansatz funktioniert nur teilweise. Bei einer Zahl mit drei "0" am Ende (Bsp.: 310,00) hat er ein Problem und macht 31,000 daraus. Und das ist aktuell mein Problem. Vielleicht hat jemand eine Idee, wie ich dies umgehen kann.

Hinweis:
- Excel wird als Makro-Vorlage abgespeichert
- Standard Layout ist Schweiz (d.h. Dez-Trennung ist Default ".") Layout kann nicht auf DE umgestellt werden.

Gruss
Andreas
Top
#2
Hola,

hier hat jemand das gleiche Problem:

http://www.herber.de/forum/messages/1569619.html

Gruß,
steve1da
Top
#3
Hallo, wieso nicht einfach wie in D1 (ohne Zwischenschritte und ohne Verrenkungen) ..?

Arbeitsblatt mit dem Namen 'Tabelle3'
ABCD
100000000002761527615276,15276,15

ZelleFormel
B1=WENN(ISTFEHLER(WERT(A1));A1;TEXT(WERT(A1);"0"))
C1=WECHSELN(B1;RECHTS(B1;2);","&RECHTS(B1;2))
D1=A1%
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#4
Hi,

oder Text in Spalten, Format Standard, danach in der Nachbarzelle den Betrag durch 100 dividieren.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#5
Hallo zusammen,

danke für eure Vorschläge.

@WillWissen: Ich muss über einen weiteres Arbeitsblatt gehen, den die Daten werden wie bereits erwähnt via Addin von einer DB importiert. Und im nächsten Reiter soll aus dem ganzen Import eine gewisse Struktur aufgebaut werden, welche ich dann als csv. exportiere/speichere. Ausserdem soll dies durch User bedient werden, mit sehr wenig/fast keine Excel Erfahrung.

@Jockel: Dein Ansatz ist zwar gut aber ich kann diesen nicht verwenden, weil CH-Einstellungen gesetzt sind. D.h. bei D1 würde ich den Wert "276.15" erhalten. Es darf aber kein Punkt sein, sondern ein Komma.

Gruss
Andreas
Top
#6
Hallo, dann eben 
Code:
=WECHSELN(A1%;".";",")

oder..: 
Code:
=--WECHSELN(A1%;".";",")
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#7
Hallo, nebenan hast du ja nun (d)eine Datei gepostet...: Also mein Vorschlag funktioniert doch... ... oder?

Arbeitsblatt mit dem Namen 'Export AS400'
K
1000000000027615
2000000000031000
3
4
5
6
7
8
9276,15

ZelleFormel
K9=K1%
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#8
Crossposting hat mitunter auch Vorteile: In diesem Fall erspart es mir einiges an Arbeit (denn es gibt wahrscheinlich unter Excel 365 eine sinnvolle Lösung).
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Top
#9
Hallo zusammen,

vielen Dank für eure Feedbacks und Vorschläge. Ich habe folgendes versucht.

Tabellenblatt 1:
A                      
000000000027615

Tabellenblatt 2:
A                B                C                D              E
27615        276,15       276,15       276,15       #WERT!
27000        27,000       270.00       270           270

Zelle Formel / Tabellenblatt 2:
A1 =WENN(ISTFEHLER(WERT('Tabellenblatt 1'!A1));'Tabellenblatt 1'!A1;TEXT(WERT('Tabellenblatt 1'!A1);"0"))
B1 =WECHSELN(A1;RECHTS(A1;2);","&RECHTS(A1;2))
C1 =A1%
D1 =WECHSELN(A1%;".";",")
E1 =--WECHSELN(A1%;".";",")

Die Formel in D1 kommt der Sache schon nahe aber bei geraden Beträgen fehlen die 2 Nachkommastellen.


.xlsx   Beispiel.xlsx (Größe: 31,04 KB / Downloads: 1)

Gruss
Andreas
Top
#10
Hallo zusammen,

im Herber Forum konnte weitergeholfen werden.

Lösung:
=WENN(Umrechnung!A1<>"0";LINKS(Umrechnung!A1;LÄNGE(Umrechnung!A1)-2)&","&RECHTS(Umrechnung!A1;2);"")

Vielen Dank an ALLE

Grüsse
Andreas
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste