Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Summenberechung USD und EURO automatisch in einer Abfrage summieren

Begonnen von xraycharli, Mai 30, 2010, 18:45:42

⏪ vorheriges - nächstes ⏩

xraycharli

Hallo Gemeinde !

ich habe ein gemeines Problem. Aus einer Exceltabelle lese ich Daten direkt in Access ein.
Access wird dabei nur über Datenzugriffseiten geladen zur Auswertung. In der Grundtabelle steht in der Spalte für den Wert nur der Zahlenwert und in einer Spalte Wähung entweder USD ode EUR.
Wenn ich summieren lasse werden die Werte summiert aber ohne Unterschied auf USD und EUR.
Ich will das alle Werte automatisiert in EUR berechnet und dann summiert werden können.

beispiel jetzt :
115,00   USD 
1145,15 EUR
85,15     USD 

soll werden : innerhalb ACCESS !!!
163,3     EUR
1145,15 EUR
120,91   EUR

ich will die Daten nicht in Excel aufbereiten sondern in Access automatisch ablaufenlassen innerhalb einer Abfrage ! wie geht das ?

Grüsse Xraycharlie

Tiefflug ist schön solange hoch genung bleibt !
Xraycharlie

schöne Grüsse aus Köln

MzKlMu

Hallo,
als berechnetes Feld in der Abfrage:
Betrag2: Wenn([Waehrung]="USD";[Betrag]*1,42;[Betrag])
Als Eintrag in der 1.Zeile einer leeren Spalte der Abfrage.
Summiert wird jetzt aber die Spalte "Betrag2".
Gruß Klaus

database

Hallo,

würde eher ...

Betrag2: Wenn([Waehrung]="USD";[Betrag]/1,2276;[Betrag])

...nehmen, da 1 EUR = ~1,23 USD (heute)  ;D

Wobei aber noch zu beachten ist, dass sich der Wechselkurs permanent ändert und daher eine fix gecodete Umrechnung ziemlich wackelig ist  :-\

115,0 USD = 93,68 EUR
85,15 USD = 69,36 EUR

Grüße

Peter

xraycharli

Klappt schon mal SUPER !
Jetzt ahbe ich herausgefundendas in der Grundtabelle japanische Jen und englische Pfund mit enthalten sind.
Kann ich das mit verarbeiten in einem Stück? Kurse ermittel ich gleich.

Danke für Eure Hilfe !



Grüsse


Xraycharlie



Xraycharlie

schöne Grüsse aus Köln

database

Hallo, wenn du die Kurse genau hast (z.B. von www.oanda.com) dann solltest du die untenstehende Formel anwenden.
Die Währungsbezeichnungen entsprechen den internationalen Kurzzeichen lt. oanda.com
dDie unten verwendeten Kurse stammen von www.oanda.com heute 16:05


Betrag2: Wenn([Waehrung]="USD";[Betrag]*0,81457;Wenn([Waehrung]="GBP";[Betrag]*1,17658;Wenn([Waehrung]="JPY";[Betrag]*0,00895;[Betrag])))

Oben ist das leidige dividieren durch einen selbst ermittelten Kurs gegen multiplizieren mit dem 'echten' Wechselkurs ersetzt.

HTH

Peter

MzKlMu

Hallo,
ich habe mich am Beispiel orientiert, ohne darüber nachzudenken. Und wenn aus 115 Euro 163,30 USD werden sollen (wie gezeigt) muss ich das mal 1,42 nehmen. Aber das ist ja geklärt.

Ich würde aber noch einen anderen Vorschlag machen.
Für die Währungen sollte man eine extra Tabelle anlegen und mit Beziehungen arbeiten. Dann kann man sich das ganze Wenn Gedöns sparen. Bei 7 Wenn() wäre sowieso Schluss. Und dann noch ein Datum in die Währungstabelle und man hat auch die Hystorie der Kurse. Das Max Datum ist der aktuelle Kurs.
Gruß Klaus

database

#6
Hallo,

@MzKlMu
ZitatIch würde aber noch einen anderen Vorschlag machen
...den ich der Stelle voll und ganz unterstütze :) denn
Zitat...sich der Wechselkurs permanent ändert und daher eine fix gecodete Umrechnung ziemlich wackelig ist  

Außerdem wird das, wie MzKlMu so treffend formuliert hat, 'Wenn Gedöns' mit jedem weiteren Währungseintrag unübersichtlicher, kaum noch wartbar und stellt dadurch auch eine nicht unerhebliche Fehlerquelle dar.
Insbesondere auch dadurch, dass bei korrektem Handling ALLE beteiligten Kurse TÄGLICH im Abfrageentwurf oder der SQL umgeändert werden MÜSSEN.  

Grüße
Peter

xraycharli

Hallo
und erstmal sorry wenn ich mich ert jetzt melde ! Den Wechselkurs zur jeweiligen Währung würde ich in einem Formular erfassen.
Jeweils zum Monatsbeginn würde der neu Kurs von mir im SAP ausgelesen und dann zum Monat in eine Tabelle eingrtragen.
Über den Monatswert kann ich dann in die Abfrage hinein lesen und die jeweilige Tabelle für die Währung den Wert holen


Betrag2: Wenn([Waehrung]="USD";[Betrag]*0,81457;Wenn([Waehrung]="GBP";[Betrag]*1,17658;Wenn([Waehrung]="JPY";[Betrag]*0,00895;[Betrag])))

wird dann

Betrag2: Wenn([Waehrung]="USD";[Betrag]*[tblusd];Wenn([Waehrung]="GBP";[Betrag]*[tblgbp];Wenn([Waehrung]="JPY";[Betrag]*[tbljpy];[Betrag])))

bei USD hat es bereits so geklappt ....

warten wir mal ab :-)

Herzlichen Dank für Eure Hilfe

LG

Xraycharli

Walter Leo
Xraycharlie

schöne Grüsse aus Köln