Durchschnittliche Zahlen, wenn eine andere Spalte einen bestimmten Teilstring-Text in Excel enthält


7

Ich suche nach einer Möglichkeit, die numerischen Zahlen in einer Spalte, z. B. B, nur dann zu mitteln, wenn die Zeichenfolge in Spalte A einen bestimmten Text enthält.

Zum Beispiel:

(In column A) (In column B)
Hello table . . . 1
Hello desk  . . . 2 
Bye table   . . . 3
Bye desk  . . . . 4

Wenn also das Kriterium zum Mitteln der Zahlen "Schreibtisch" ist, wäre die Antwort (2 + 4) / 2 = 3.

Was ich mir bisher ausgedacht habe, ist:

=AVERAGEIF(A1:A5, SEARCH("desk",B1:B5),B1:B5) 

Es wird jedoch ein Fehler zurückgegeben, da SEARCH nur eine Eingabe akzeptiert.

Irgendwelche Vorschläge?

Antworten:



3

Als eine etwas generische Antwort, die für Sie funktioniert, eine andere Möglichkeit, eine Bedingung innerhalb einer Funktion (in Ihrem Fall eine IF innerhalb eines DURCHSCHNITTS) auszuführen, können Sie sie jederzeit auseinander brechen. Die IF-Anweisung kann auch ein Array zurückgeben und muss kein einzelner Wert sein.

Wenn Sie tippen

=AVERAGE(IF(ISERROR(SEARCH("desk",A1:A5))=FALSE,A1:A5))

und drücken Sie Ctrl+ Shift+, Enternachdem Sie es eingegeben haben. Dann wird die Eingabe als Array und nicht als Wert behandelt, wodurch Ihre Ergebnisse angezeigt werden.

Hoffe das hilft!


Dies scheint überhaupt nicht das zu tun, was gefragt wurde. Dies ergibt einen Durchschnitt von A1: A5 (den Bereich mit Text), wenn eines der Elemente in A1: A5 das Wort "Schreibtisch" enthält. Selbst wenn Sie den vom IF-Teil an B1: B5 zurückgegebenen Bereich korrigieren, funktioniert er immer noch nicht wie erforderlich, da alle Elemente zurückgegeben werden und nur dann, wenn keine Zeilen eine Übereinstimmung enthalten.
Krowe2

1

AVERAGEIF ist die beste Antwort für Excel 2013+. Für ältere Versionen müssen Sie eine dritte Spalte verwenden, C.

Alle Zellen in Spalte C (mit einem Wert links) haben diese Formel: =IF(ISNUMBER(SEARCH(C$7,A1)), B1, "")

In Cell, C7 wurde nur das Wort deskeingegeben, damit diese Formel nicht jedes Mal korrigiert werden muss, wenn Sie die Suche ändern.

Danach machen Sie einfach einen Durchschnitt davon in C5 , =AVERAGE(C1:C4). Das ist alles was du brauchst. Es wird nicht viel Platz verschwendet, und Sie können das Suchfeld auch entfernen, wenn Sie die Funktionen lieber bei Bedarf anpassen möchten.


0

Ich bin nicht sicher, ob die Verwendung von Spalte C eine Möglichkeit für Sie ist, aber hier ist eine Option, die ich getestet habe.

Geben Sie in Zelle C1 die folgende Formel ein: = IF (ISNUMBER (SEARCH ("Schreibtisch", A1)), B1, "")

Kopieren Sie diese Formel für jede Zeile in Spalte C.

Durchschnitt der Mengen, die in Spalte C erscheinen.

Wenn Spalte C bereits verwendet wird, fügen Sie einfach eine andere Spalte an ihrer Stelle ein

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.