Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Währungsbetrag aus Zelle auslesen

Forumthread: Währungsbetrag aus Zelle auslesen

Währungsbetrag aus Zelle auslesen
09.12.2024 10:30:15
Matthias
Guten Morgen zusammen,

in meinem Fall habe ich ein Tabellenblatt mit einer Spalte wo in den Zellen jeweils immer ein Text drin steht und am Ende der Zelle ein Preis.
In der Form "Bierkrug 8€" oder "Laptop 600€" z.B.
Ich möchte nur den Preis auslesen. Ich habs mit Rechts() probiert, das klappt aber nicht immer, weil ich nicht weiß ob der Preis 1€ oder 60€ oder 1000€ ist, ich weiß also nicht wieviele Zeichen in benötige. Auch nach Leerzeichen in der ganzen Zelle kann ich nicht suchen, weil der Text selbst auch Leerzeichen enthalten könnte, oder aber auch Zahlen, sodass ich nicht einfach nach Zahlen suchen kann.
Was funktionieren würde, wär eine suche nach dem ersten Leerzeichen von rechts und dann von da an den den Rest auslesen, weil der Preis immer am Ende der Zelle steht.
Das krieg ich aber leider nicht hin. Wie kann ich nach dem ersten Vorkommen eines Zeichens von rechts suchen?

Bin für jede Hilfe dankbar :-)

Beste Grüße
Matthias

Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Währungsbetrag aus Zelle auslesen
09.12.2024 10:38:04
peter
Hallo

Wenn dein Text in A1 steht

=GLÄTTEN(RECHTS(WECHSELN(A1;" ";WIEDERHOLEN(" ";99));100))

Ersetzt jedes Leerzeichen durch 99 Leerzeichen, schneidet die Letzten 100 Zeichen ab und entfernt wieder die Leerzeichen.

Peter
AW: Währungsbetrag aus Zelle auslesen
09.12.2024 10:50:54
Yal
Hallo Matthias,

wieviel Währung musst Du prüfen?
=WENN(ISTZAHL(FINDEN("€";A1));"EUR";WENN(ISTZAHL(FINDEN("$";A1));"USD";"-"))

Das Muster lässt sich beliebig ergänzen.

Excel365 hat die Besonderheit, dass ein "€" vorn oder hinter automatisch zu einem Umwandlung in Zahlenformat "Währung" führt. Es müsste dann der Zahlenformat geprüft werden, was mMn nur mit VBA geht. Aber 2013 wird diese Problem nicht haben.

VG
Yal
Anzeige
AW: Währungsbetrag aus Zelle auslesen
09.12.2024 10:48:01
Matthias
Hallo Peter,

das ging schnell. Mir ist der Lösungsweg zwar zu hoch, aber es scheint tatsächlich zu funktionieren. Keine Ahnung Warum :-P
Wie auch immer. Vielen Dank :-)
=RECHTS(WECHSELN(A1;" ";"");1) liefert genau dieselbe Erg.!
09.12.2024 10:53:07
Yal
Nein...
09.12.2024 10:55:31
{Boris}
Hi Yal,

...da liegst Du diesmal aber falsch ;-)

VG, Boris
Anzeige
AW: Nein...
09.12.2024 11:15:55
Yal
Hallo Boris,

ich entdecke gerade, dass es darum geht, den Preis zu lesen, nicht nur die Währung. Mea culpa.

Ich würde aber eine "GLÄTTEN" hinzufügen, um zu sichern, dass nach dem Preis keine Leerzeichen vorhanden ist:
=GLÄTTEN(RECHTS(WECHSELN(GLÄTTEN(A1);" ";WIEDERHOLEN(" ";99));100))


Wie immer, wenn ich mit Formeln überfordert bin, weiche ich auf einem selbstdefinierten Formel:
Public Function PartOfString(ByVal Target, Index As Long, Optional Trenner = " ") As String

Dim Arr
If TypeOf Target Is Range Then Target = Target.Cells(1).Value
Arr = Split(Trim(Target), Trenner)
If Index 0 Then
PartOfString = Arr(UBound(Arr) + Index + 1)
Else
PartOfString = Arr(Index - 1)
End If
End Function
in dem Fall mit der Formel
= PartOfString(A1;-1)

VG
Yal
Anzeige
GLÄTTEN bringt hier auch nix ;-)
09.12.2024 11:28:38
{Boris}
Hi Yal,

...ist aber auch egal - gibt ja jetzt genug Lösungen ;-)

VG, Boris
AW: GLÄTTEN bringt hier auch nix ;-)
09.12.2024 11:57:57
Yal
Mit Verlaub, aber mit
=GLÄTTEN(RECHTS(WECHSELN(A1;" ";WIEDERHOLEN(" ";99));100))

wenn am Ende von A1 einen Leerzeichen steht (sollte nicht, aber...) wird dieser auf 99 Leerzeichen aufgebläht und den Rechts(..;100) nimmt dann nur einen einzigen "richtigen" Zeichen daraus. Daher
=GLÄTTEN(RECHTS(WECHSELN(GLÄTTEN(A1);" ";WIEDERHOLEN(" ";99));100))
um sicherzustellen, dass es keinen Leerzeichen nach dem letzten Block gibt.

oder?

VG
Yal
Anzeige
OK - gekauft ;-) oT
09.12.2024 12:03:02
{Boris}
VG, Boris
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18