Thema Datum  Von Nutzer Rating
Antwort
29.11.2008 20:33:14 HeinzLam
NotSolved
01.12.2008 18:07:24 jh
NotSolved
03.12.2008 14:50:20 HeinzLam
NotSolved
03.12.2008 17:43:05 jh
NotSolved
Rot Aw:Aw:Aw:Aw:Währung formatieren
06.12.2008 11:53:25 HeinzLam
NotSolved

Ansicht des Beitrags:
Von:
HeinzLam
Datum:
06.12.2008 11:53:25
Views:
3446
Rating: Antwort:
  Ja
Thema:
Aw:Aw:Aw:Aw:Währung formatieren

Hallo Jh, liebe Forum-Gemeinde!

Ich habe das Problem gelöst:

1)
a) Die Formulierung „=format(Variable, „currency")" brachte je nach Excel-Version (97-2007) unterschiedliche Ergebnisse, was die Nachkommastellen (bis zu 4 Nachkommastellen) und das Währungszeichen (Euro) anging. Es gibt da scheinbar in Excel zig verschiedene Formate für die Euro-Währung. Deshalb ist dieser VBA-Code zur Weitergabe an andere, die unterschiedliche Excel-Versionen einsetzen, nur „bedingt" geeignet.

b) Problem ist hierbei aber, dass per Makro eingefügte Formeln in nachfolgende Zellen nicht das Währungsformat erhalten. Beispiel:

ActiveSheet.Cells(ZeileNr, 2).Value = "=b9-b13-b19-b21"
‘Zelle in ZeileNr, Spalte 2 soll die Werte aus anderen Zellen addieren.

Deshalb:

2.) habe ich dann - leider erfolglos - versucht, die Spalte zu formatieren:

VBA-Code:

Columns("B:B").Select
‘Alternative a:
'Selection.NumberFormat = "#,##0.0 €"
‘brachte unbefriedigende Ergebnisse, weil scheinbar nicht überall das Euro-Zeichen korrekt dargestellt wird
‘Alternative b (durch Makroaufzeichnung schreiben lassen"
'Selection.NumberFormat = "#,##0.00 $" 'brachte in Excel 2000 unmögliches Ergebnis (siehe 1)
Alternative c:
'Selection.NumberFormat = "#,##0.00_ ;-#,##0.00 " ‘keine Euro-Symbol-Darstellung

3.) Schließlich habe ich das Problem 1b wie folgt gelöst, indem ich jeweils davor eine Zeile eingefügt habe. Dann bleibt bei der nachfolgenden Einfügung der Formel das Währungsformat erhalten:

ActiveSheet.Cells(ZeileNr, 2).Value = Format(0, "currency")
ActiveSheet.Cells(ZeileNr, 2).Value = "=b9-b13-b19-b21"

Hätte jemand eine bessere Möglichkeit gehabt?

Fragen:
Ist das Problem, dass currency das Währungsformat in den Excel-Versionen 2000 und 2007 unterschiedlich darstellt, auch woanders aufgefallen und ggf. gelöst worden?

Liebe Grüße
-----------------------------------------------------------------------------------------

jh schrieb am 03.12.2008 17:43:05:

Hallo,

O.K., noch ein Versuch:

ActiveSheet.Cells(Zeil, 2).NumberFormat = "#,##0.00 $"

Dann kannst du die "nackte" Zahl dort reinschreiben, und sie
sollte eigentlich anhand der Systemeinstellungen als Währung
formatiert werden. Na ja, eigentlich...

Gruß


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
29.11.2008 20:33:14 HeinzLam
NotSolved
01.12.2008 18:07:24 jh
NotSolved
03.12.2008 14:50:20 HeinzLam
NotSolved
03.12.2008 17:43:05 jh
NotSolved
Rot Aw:Aw:Aw:Aw:Währung formatieren
06.12.2008 11:53:25 HeinzLam
NotSolved