
Was ich gerne tun würde, ist
=AVERAGE(col(2)2:col(2):5, col(5)2:col(5):5,, col(9)2:col(9):5)
Wie Sie sehen, B2
habe ich anstelle von zum Verweisen auf eine Zelle das B
durch ein fiktives ersetzt, col(2)
bei dem die Zahl 2 = B ist.
Ist das möglich?
Kontext, falls hilfreich:
Ich habe einige Daten, die so aussehen (das ist das Ergebnis einer Umfrage)
A B C D
1 ID Q1 Q2 Q3
2 1 3 1 2
3 2 4 5 4
In diesem Fall steht Q für Frage und die Zahl ist die der Frage zugewiesene Punktzahl.
Ich möchte den Durchschnitt basierend auf bestimmten Spalten berechnen. In diesem Fall möchte ich nur die Summe aller Spalten B und D bilden.
Ich weiß, wie das geht average
, aber ich komme nicht weiter, weil ich nicht weiß, wie ich die Spalte anhand einer Zahl erfassen kann. Wie Sie sehen, ist B Frage 1, C Frage 2, D Frage 3 (und das geht bis AZ).
Ich habe darüber nachgedacht, eine zusätzliche Zeile hinzuzufügen, um die Frage darzustellen
A B C D
1 1 2 3
2 ID Q1 Q2 Q3
3 1 3 1 2
4 2 4 5 4
Und dann vielleicht verwenden match
, aber ich habe so verloren, es ist nicht wert, zu teilen, was ich hier versucht habe
Antwort1
Um den Durchschnitt bestimmter Spalten nach Zahlen zu berechnen, können Sie dies INDEX
mit einem Array-Argument für verwenden columns
.
zB in deinem Beispiel:
=AVERAGE(INDEX($A2:$D2,1,{2,4}))
würde den Durchschnitt der Spalten 2 und 4 ergeben
Wenn die Spaltennummern zufällig sind, müssen Sie sie wie gezeigt in eine Array-Konstante fest codieren. Wenn eine mathematische Beziehung besteht, ist eine Formel zum Generieren des Arrays der Spaltennummern möglicherweise praktischer.
Da INDEX
nur die relevanten Spalten zurückgegeben werden, können Sie jede Funktion verwenden, die ein Array als Argument annimmt.
FrüherFür manche Excel-Versionen ist möglicherweise eine andere Formel erforderlich. Schreiben Sie uns also erneut, wenn dieser Ansatz bei Ihnen nicht funktioniert, und teilen Sie uns genau mit, was nicht funktioniert (oder welche Fehlermeldung angezeigt wird).