Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1404to1408
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Währungsformat auslesen

Währungsformat auslesen
27.01.2015 15:14:23
Paul
Hey,
ich habe folgendes Problem. Ich habe mit Hilfe eines Makros Werten (Zahlen) und Formate (Währung) von einem Workbook ins andere kopiert. alles kein Problem.
Jetzt möchte ich die Zahlen unterschiedlicher Währung (Euro und US-Dollar) aus Spallte "A" in Spalte B in chilen. Peso umrechnen. Die Umrechnungsfaktoren sind auch gegeben.
Ich habe es probiert mit:
If ActiveCell.NumberFormat ="$" Then
.....
Else
...
End If
Klappt leider nicht. Bitte um Hilfe.
Hier noch die Datei, wem es hilft: https://www.herber.de/bbs/user/95321.xlsm
lg Paul

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Währungsformat auslesen
27.01.2015 15:24:03
Klaus
Hi Paul,
das NumberFOrmat von A2 ist nicht "€", sondern "_-[$€-2] * #,##0.00_-;-[$€-2] * #,##0.00_-;_-[$€-2] * " - "?_-;_-@_-".
Kannst du auch auslesen, mit:
debug.print Range("A2").NumberFormat
Mit so einem Klotz würde ich nicht arbeiten, darum hier meine Alternative:
Sub test()
' .text (zeigt den echten Text nach Formatierung)
Dim r As Range
Dim myVal As Variant
For Each r In Range("A2:A5")
Select Case Left(r.Text, 2)
Case " €"
myVal = r.Value * Range("G1").Value
Case " $"
myVal = r.Value * Range("G2").Value
Case Else
myVal = "Umrechnungskurs fehlt"
End Select
r.Offset(0, 1).Value = myVal
Next r
End Sub
Spalte B kannst du dann als Währung-CLP formatieren.
Grüße,
Klaus M.vdT.

Anzeige
Da hast du ein Problem mit 'Left(r.Text, 2)', ...
27.01.2015 17:34:38
Luc:-?
…Klaus,
denn wer sagt denn, dass das Währungssymbol immer links (bzw rechts) steht (links würde auch eher "$ " ergeben!)?! Außerdem hat der Peso auch das $-Symbol mit Zusatz. Hier muss aus Zell.Text jede Ziffer gelöscht oder mit Instr und Währungssymbol-Liste gearbeitet wdn.
Außerdem gibt's noch die Variante, dass nicht mit Currency-Symbolen, sondern mit Kurzbezeichnungen wie EUR oder USD gearbeitet wird.
Gruß, Luc :-?
Besser informiert mit …

Anzeige
AW: Da hast du ein Problem mit 'Left(r.Text, 2)', ...
28.01.2015 08:09:52
Klaus
Hallo Luc,
du hast recht. Ich habe das Makro an die beiliegende Musterdatei angepasst, in der funktioniert es so. Wenn man da anpasst, sollte man auch gleich eine Währungsliste hinterlegen und sich die direkte Referenzierung wie "r.Value * Range("G1").Value" sparen und noch vieles mehr ändern, aber ich habe hier mit Absicht nur eine Insellösung bereitgestellt.
Es ist sicher auch möglich, sich im Makro den Tages- oder sogar Sekunden-aktuellen Umrechnungskurs aus dem Netz zu holen.
Grüße,
Klaus M.vdT.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige