Ich habe etwas sehr ähnliches gebaut, was Sie für meine eigenen Arbeitszwecke beschreiben. Ich glaube, Sie werden dieses Dokument anderen Benutzern (d. H. Mitarbeitern, Kunden usw.) vorstellen, daher werde ich vorschlagen, Ihre kategorisierten Antworten auf ein separates Blatt zu verschieben. Auf diese Weise haben Sie ein sehr sauberes, vorzeigbares Arbeitsblatt als Präsentationsebene.
Lassen Sie mich Ihr Beispiel in den Kommentaren verwenden, aber ich werde ein Mapping hinzufügen. Die erste Kategorie hat Optionen in den Zellen A1: A3 (zB Laufen, Radfahren und Schwimmen). B1: B5 hat Geschwindigkeiten zum Laufen, C1: C5 hat Geschwindigkeiten zum Radfahren und D1: D5 hat Geschwindigkeiten zum Schwimmen (d.h. 1 mph, 2 mph, 3 mph, 4 mph, 5 mph).
Lassen Sie als Nächstes eine Spalte reservieren, um einen Spaltenbuchstaben zurückzugeben (in den Spalten B, C oder D sollte je nach Auswahl des Trainings zurückgekehrt werden). Geben Sie in Spalte E Folgendes ein, und kopieren Sie für alle Zeilen, für die Daten ausgewählt werden sollen: = IFERROR (INDEX ({"B", "C", "D"}, MATCH (A1, $ A $ 1: $ A $ 3) , 0)), "B") < < Das "B" am Ende soll verhindern, dass Fehler auf Zellen zurückkommen, die keine Daten ausgewählt haben.
In Ihrer Zelle, wo die Art der Übung ausgewählt werden soll (ich werde Zelle F1 wählen), fügen Sie eine Datenvalidierung hinzu (2010 & später: in der Registerkarte "Daten" in der Multifunktionsleiste). Wählen Sie "List" in der ersten Dropdown-Liste und die Quelle (in dem oben angegebenen Beispiel) würde Folgendes anzeigen: "$ A $ 1: $ A $ 3".
Dann in Zelle G1 (für meine eg), wiederholen Sie den Datenvalidierungsprozess folgende in die Quelle jedoch eingeben: = INDIRECT (E1 & "1:" & E1 & "5", 1)
INDIRECT erstellt die Datenüberprüfungsliste für Sie, Sie MÜSSEN jedoch den in Spalte E angegebenen Zwischenschritt einfügen, da Sie keine Arrays in eine Datenüberprüfungsliste aufnehmen können. Bitte kopieren Sie auch alle Formeln nach unten, um jede Zeile einzuschließen, die Sie dieser Funktionalität zuweisen möchten (wenn Sie den kleinen Pfeil auf der Zelle nicht sehen, wenn Sie ihn auswählen, existiert die Formel nicht in dieser Zelle, kopieren Sie sie daher)
Wenn Sie eine Liste von Workouts über 3 hinausgehen (ich stelle es vor), erweitern Sie Ihre Datenüberprüfungsliste in Zelle F1, um alle Workouts einzubeziehen (in Ihrem Beispiel setzen Sie "$ A $ 1: $ A $ 10" (keine Anführungszeichen)). Wenn Sie die Anzahl der (im Beispiel bereitgestellten) Geschwindigkeiten auf mehr als 5 Stufen erhöhen, ändern Sie in der INDIREKTEN Formel in Ihrer G1-Datenvalidierungszelle die "5", um alle Zeilen einzuschließen. Wenn Ihr Beispiel, wenn die Geschwindigkeiten, bei denen in Zellen A11: A19, würde geben Sie diese stattdessen: = INDIRECT (E1 & "11:" & E1 & "19", 1)
Sie den Vorgang wiederholen können so viele Wie du magst, aber für jede Ebene, die du einbaust, musst du den Prozess in Spalte E replizieren, da dies die Spalte ist, die den nachfolgenden Ebenen sagt, wo sie suchen sollen.
Lassen Sie mich wissen, wenn Sie weitere Beschreibung benötigen, wie die tieferen Ebenen zu kodieren (dh Radfahren 15 Meilen pro Stunde 20 Minuten, 7 Intensität < < diese drei Ebenen tief ist)
EDIT
Zusätzlicher Schritt unter
Ich entschuldige mich, dass ich so etwas nicht aufgenommen habe. Sie können weiterhin die oben beschriebene Methode verwenden, um dynamische Dropdown-Listen zu erstellen. Sie benötigen jedoch einen zusätzlichen Schritt, um den Wert zurückzugeben, der die zu berechnende Intensität darstellt.
Ich muss +1 für Robert Boyett's Antwort sagen. Es ist der einfachste Weg zu programmieren, was Sie brauchen. Ich werde eine Methode zur Verfügung stellen, mit der Sie dynamisch weitere Trainingsroutinen hinzufügen können, ohne dass Sie zusätzliche IF-Bedingungen und zugehörige SVERWEISE hinzufügen müssen. Ich werde den Link von Robert Boyett als Referenz verwenden.
Geben Sie in Zelle C11 Folgendes ein: = SUMME (INDIREKT (INDEX ({"A", "B", "C", "D", "E", "F", "G"}, MATCH (A11, $ A $ 4: $ G $ 4,0) +1) & "1:" & INDEX ({A, B, C, D, E, F, G "}, MATCH (A11, $ A $ 4: $ G $ 4,0) +1) &" 3 "), INDIREKT (INDEX ({" A "," B "," C "," D "," E "," F "," G "}, MATCH (A11, $ A $ 4: $ G $ 4,0)) &" 1: "& INDEX ({" A "," B "," C "," D ") , "E", "F", "G"}, MATCH (A11, $ A $ 4: $ G $ 4,0)) & "3"), B11)
Dies erfordert Zellen B4, D4 und F4, um den Tailing "Type" zu löschen und stattdessen genau mit dem Wortlaut aus der ersten Drop-Down-Liste (Running, Biking, Swimming) übereinzustimmen. Auf diese Weise wird die MATCH-Formel den erforderlichen Wert zurückgeben.
Sie können auch die Grenze in der MATCH Formel ($ A $ 4: $ G $ 4) erweitern, um einen langen Weg weg ... sagen $ A $ 4: $ BA 4 $ < < dies wird bis zu 26 verschiedenen Trainingseinheiten ermöglichen. Erweitern Sie die Liste um weitere Trainingstypen hinzuzufügen. Erweitern Sie außerdem in der INDIREKTEN Formel die "3" zu einer großen Zahl, um mehr Intensitätspegel einzubeziehen (das Setzen von "9" anstelle von "3" ermöglicht bis zu 9 Intensitätsstufen).
Sie haben vielleicht bemerkt, dass ich ein Array mit dem Alphabet einschließe. Es ist besser, wenn dieses Array tatsächlich eine Reihe von Zellen auswählt, die in jeder nachfolgenden Zelle jeden Buchstaben des Alphabets enthalten. In meinem Beispiel für die Verwendung eines Bereichs von $ A $ 4: $ BA $ 4 würden Sie sagen, Spalte BB, das Alphabet in jeder Zeile, und wenn Sie Z erreichen, starten Sie das Alphabet mit einem führenden A (dh AA, AB , AC, etc.) und fahren Sie so weit wie Sie möchten. Ersetzen Sie das Array (in der INDEX-Formel mit den geschweiften Klammern {} gekennzeichnet) durch diesen Bereich, in diesem Beispiel $ BB $ 1: $ BB $ 53.
Auch würde ich empfehlen, die Kopfzeilen in der obersten Zeile setzen, so anstelle von $ A $ 4: $ G $ 4 (oder im letzten Absatz $ A $ 4: $ BA $ 4) sollten Sie $ A $ 1: $ BA haben $ 1. Auf diese Weise können Sie so viele Ebenenintensitäten hinzufügen, wie Sie möchten (vorausgesetzt, Sie haben dies in der INDIREKTEN Funktion zugewiesen.)
Nach all meiner Anweisung nach der ersten Formel haben Sie jetzt in Zelle C17: = SUMIFS (INDIREKT (INDEX ($ BB $ 1: BB $ 53, SPIEL (A11, $ A $ 1: $ BA $ 1,0) +1) & "1:" & INDEX ($ BB $ 1: BB $ 53, Match (A11, $ A $ 1: $ BA $ 1,0) +1) & "9"), INDIREKT (INDEX ($ BB $ 1: BB $ 53, MATCH (A11, $ A $ 1: $ BA $ 1,0)) & "1:" & INDEX ($ BB $ 1: BB $ 53, Match (A11, $ A $ 1: $ BA $ 1,0)) & "9"), B11)
Erhöhen Sie die Grenzen, wie Sie für richtig halten.Ich würde stark vorschlagen, die Daten in ein separates Tabellenkalkulation oder, wenn ein ol In der Version von Excel, schneiden Sie diese Daten aus und fügen Sie sie rechts neben Ihrem Benutzerformular ein (sagen Sie rechts von Spalte H sieht sicher aus wie Robert's Bild) und verstecken Sie die Spalten. Schützen Sie dann das Blatt vor Änderungen, abzüglich der Zellen, für die Sie den Schutz für die Benutzereingabe aufgehoben haben.
Prost Robert Boyett für die Bereitstellung der. Png-Dateien auf Ihrem Hosted Server. Sehr hilfreiche Ressource.
Ihre Frage ist nicht klar. Ich schlage vor, Sie lesen die HELP-Seiten für Informationen zu [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic), [Wie man eine gute Frage stellt] (http: // stackoverflow.com/help/how-to-ask) und [So erstellen Sie ein minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve). Dann formulieren Sie Ihre Frage neu, um sich an diese Richtlinien anzupassen, indem Sie Ihre ursprüngliche Frage bearbeiten. –
Sie sollten in der Lage sein, über Drop-Down-Liste und If-Formel zu archivieren, aber es ist schwer, Ihnen eine Antwort ohne Beispieldaten und ein Beispiel zu geben. –
Ich habe eine Liste von Aktivitäten Kategorie nennen wir es "A", die zum Beispiel "A1 TO A10" enthalten. Jede Aktivität in dieser Liste würde selbst kategorisiert werden. Sagen wir, die Aktivität '' A1 '' wird in 'A11 bis A19' untergeordnet und wiederum wurde jede dieser Aktivitäten durch eine bestimmte Nummer definiert. (LISTE '' A '' und seine Unterliste sind Textformat.Schließlich erhalte ich eine Nummer von Ihrer Antwort und diese Nummer wird in einer Funktion platziert. Es gibt über 800 Aktivitäten insgesamt, aber es gibt eine Liste von 10 bis 15, die jeweils zu 20 bis 30 Aktivitäten kategorisiert werden und jede Aktivität hat ihre eigene spezifische Nummer. –