Excel 2010: Wie verweise ich mit einem definierten Spaltennamen und einer Zeilennummer auf ein bestimmtes Feld?


-1

Ich verwende Excel 2010 und erstelle eine Arbeitsmappe, um Details zu Produkten in einem Geschäft zu definieren (einschließlich Kategorie, Preis, Zubehör). Ich möchte auch Standardkategoriedetails definieren, die verwendet werden sollen, wenn die spezifischen Details eines Produkts leer bleiben.

Ich habe drei Arbeitsblätter eingerichtet: Produkte, CategoryDefaults und Berechnet. Spalten sind die Produkt- / Kategoriedetails und jeder Artikel / jede Kategorie hat eine eigene Zeile. Ich möchte auch benannte Spalten so oft wie möglich zur besseren Lesbarkeit verwenden. Ein Spaltenname, der mit P beginnt, ist das Produktdetail und einer, der mit D beginnt, stammt aus dem CategoryDefault-Blatt.

Die Felder in Berechnet sehen ungefähr so ​​aus:

=IF(Products!G2="",
INDEX(DPRICE, MATCH(Products!A2, DCAT, 0)),
Products!G2)

Dabei ist DPRICE eine benannte Spalte für die Standardpreise und DCAT der Kategoriename für das Blatt CategoryDefaults.

Die Formel lautet wie folgt: Wenn die Produktnummer 2 Spalte G leer ist, suchen Sie den Wert von Spalte A Produkt 2 im CategoryDefault-Blatt und geben Sie den DefaultPrice zurück. Anderenfalls geben Sie den definierten Preis zurück.

Soweit funktioniert das alles einwandfrei. Ich möchte noch einen Schritt weiter gehen: Im vorherigen Beispiel bezieht sich Produkte! G2 auf die Preisspalte für Produkt in Zeile 2. Ich möchte die Lesbarkeit der Formel verbessern, indem ich den Spaltenbuchstaben 'G' durch einen Namen ersetze Spaltenreferenz, nämlich 'PPRICE'. Ich würde dasselbe mit dem Verweis auf Produkte! A2 tun, indem ich die Spalte "PCAT" (die Kategorie, zu der das Produkt gehört) aufrufe.

Die endgültige Formel würde ungefähr so ​​aussehen:

=IF(Products!PPRICE:2="",
INDEX(DPRICE, MATCH(Products!PCAT:2, DCAT, 0)),
Products!PPRICE:2)

Ich kann das einfach nicht zum Laufen bringen. Ich habe "Apply Names ..." ohne Ergebnis und jede Variation von Doppelpunkten und $ ohne Erfolg versucht. Hat das schon mal jemand gemacht?


Sie haben das Setup gut erklärt, aber es ist nicht klar, um welches Problem es sich handelt. Bringt es nur Namen zum Laufen (letzter Absatz), oder gibt es mehr zu dem Problem?
Fixer1234

Das Problem wird im letzten Absatz beschrieben. Ich werde es bearbeiten, um zu klären.
tzvi

Antworten:


0

Ich habe festgestellt, dass INDEX(PPRICE, 2)der Wert der zweiten Zeile in der Spalte PPRICE zurückgegeben wird. Das gesamte Code-Snippet sieht folgendermaßen aus:

=IF(INDEX(PPRICE, 2)="",
INDEX(DPRICE, MATCH(Products!A2, DCAT, 0)),
INDEX(PPRICE, 2))

Es ist jedoch ein absoluter Wert und kein relativer Wert. Wenn Sie diese Formel kopieren und in andere Zeilen einfügen, zeigt sie weiterhin auf Zeile 2. Dies ist daher keine gute Idee für große Datenmengen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.