2017-03-03 1 views
0

Meine Tabelle enthält für jeden Monat eine Spalte "Zugewiesen" und eine Spalte "Ist". Wenn der Endbericht ausgeführt wird und sich der Monat ändert, möchte ich, dass mein vlookup automatisch den Wert des Monats verwendet, in dem der Bericht ausgeführt wird (in Adresse 'z1' eingegeben), als die Spalte, aus der die Daten abgerufen werden sollen.Verwenden einer dynamischen Spaltennummer für ein vlookup

Zum Beispiel:

z1 = 02 (für den Bericht im Februar ausgeführt wird)

a3 = ID

b3 = Jan Allocated $

c3 = Jan Act $

d3 = Feb Allocated $

e3 = Act Februar

$

a10 = vlookup('ID123',A:E,2,false)

wo die 2 in der vlookup Formel tatsächlich die Adresse ‚Z1‘ verweist, wo die Spaltennummer gespeichert ist (dies wird schließlich eine berechnete Zahl sich stützen auf der Monat und der Versatz der Anfangswerte für alle anderen Daten im Arbeitsblatt. Dies ändert sich dann, wenn sich der Wert in "Z1" ändert, ohne dass alle Formeln jeden Monat geändert werden müssen.

Ich stellte mir es etwas wie folgt aussehen: =vlookup('ID123',A:E,z1,false)

ich einen BEZUG Fehler, wenn ich die oben verwenden. Dank

+2

Verwendung doppelte Anführungszeichen nicht einfache Anführungszeichen. –

+0

Und stellen Sie sicher, Z1 ist eine Zahl und kein Text, der wie eine Zahl aussieht. –

Antwort

0

Wenn Ihr Z1 Eingabe von "02" (Februar) bedeutet, dass Sie Spalte D (Feb zuordenbar) verwenden Sie dann zurückkehren möchten:

=vlookup("ID123",A:Y,z1*2,false) 

Andernfalls, wenn Sie Spalte E zurückkehren möchten (Februar Act) verwenden dann:

=vlookup("ID123",A:Y,z1*2+1,false) 

das bedeutet, Z1 kann immer 01-12, die Monatszahl enthalten und das bisschen Mathematik in der vlookup wird Reinter pret zu dem erforderlichen col_index_num. Ich änderte auch den Datentabellenbereich von A:E zu A:Y, um den ganzen 12-Monats-Bereich einzuschließen ... ein wenig raten.

+0

Vielen Dank, das hat funktioniert, nicht sicher, warum die Zellreferenz nicht funktionierte, als ich es versuchte. – user3140367

+0

Ace, danke. Vergessen Sie nicht, die Antwort "zu akzeptieren", wenn Sie glücklich sind :-) – David

0

Sie können die mit "Allocated $" oder "Act $" verkettete Funktion MATCH(lookup_value, lookup_array, match_type) verwenden, um die Spaltennummer zu finden.

=VLOOKUP("ID123",A:E,MATCH(Z1&" Act $",3:3,0),FALSE)

Verwandte Themen