Ich habe ein Arbeitsblatt "2011-11" mit einer Reihe von Zahlen in Spalte C. Die Zahlen befinden sich jeweils in einer bestimmten Währung, die durch einen Code in Spalte B identifiziert wird. Ich möchte eine einzelne Formel schreiben (in Zelle C14), die jede Zahl (von C4: C13) in Pfund Sterling (GBP) umrechnet, indem sie durch den jeweiligen Wechselkurs dividiert wird, und dann die Summe dieser Zahlen berechnen.
Die Wechselkurse werden in einem separaten Arbeitsblatt "GBP" gespeichert. Der Kurs ändert sich jeden Monat. Es gibt also eine Tabelle mit den Währungscodes vertikal und den Monat horizontal.
Ich habe eine Formel, die für eine einzelne Zelle C4 den Wechselkurs korrekt nachschlägt:
=INDEX(GBP!$A$4:$BE$42,MATCH($B4,GBP!$A$4:$A$42,0),MATCH(DATE(LEFT(A1,4),MID(A1,6,2),31),GBP!$A$3:$CE$3,1))
Also hatte ich gehofft, dass ich den Referenzbereich im ersten geändert habe MATCH
deuten auf $B4:$B13
, das Ganze in eine SUM
Formel und Eingabe als Array-Formel, würde ich die richtige Antwort erhalten:
{=SUM(C4:C13/INDEX(GBP!$A$4:$BE$42,MATCH($B4:$B13,GBP!$A$4:$A$42,0),MATCH(DATE(LEFT(A1,4),MID(A1,6,2),31),GBP!$A$3:$CE$3,1)))}
Während es jedoch fast da ist, gilt für jede Zeile der Wechselkurs für Zeile 4. Hilfe sehr geschätzt! Kann es gemacht werden oder muss ich eine zusätzliche Spalte einfügen?
Ein paar zusätzliche Anmerkungen:
Ich habe es versucht
SUMPRODUCT
anstattSUM
, aber das machte keinen UnterschiedDer Wert von A1 ist "2011-11".
quelle
Antworten:
Meine erste Vermutung war teilweise richtig, aber falsch herum.
Problem 1
Der Nachschlagewert
basiert auf dem Wert 2011-11 und ist daher äquivalent zu
Dies führt zu inkonsistenten Werten. Für Oktober gibt es 31Okt11. Für November gibt es 1Dec11. Um konsistente Werte zu erhalten, z. B. den letzten Tag eines Monats, verwenden Sie Folgendes:
Problem 2
Wenn Sie Ihre ursprüngliche Formel in die Spalte kopieren, werden Sie
Sie erhalten "#WERT!" für alle Kopien, da A1 zu B1, C1 usw. wird
Du brauchst
Problem 3
In Ihrer Arrayformel
Sie haben fünf Bereiche, von denen Sie möchten, dass Excel zwei Arrays verwendet. Ich kann nichts finden Excel vorzuschlagen, wenn Sie schlau genug sind, dieses zu erraten, was Sie wollen.
Das Beste, was ich anbieten kann, ist die Einstellung von D4 auf:
Kopieren Sie diese Formel in die Spalte und berechnen Sie die Summe mit:
Ich bin jedoch ein guter Excel VBA-Programmierer. Ich bin kein Excel-Anwender. Andere können Ihnen sagen, wie Sie das erreichen, wonach Sie suchen.
quelle