Extrahieren Sie eine Array-Formel aus Daten mit mehreren Kriterien

Extrahieren Sie eine Array-Formel aus Daten mit mehreren Kriterien

Ich habe die folgende Tabelle mit Laptopdetails

(Laptops)
Name                  |  RAM   |  CPU
===========================================
Laptop Example 1      | 4      | Intel® Core™ i3-8130U   
Laptop Example 2      | 8      | Intel® Core™ i5-8250U 
Laptop Example 3      | 16     | Intel® Core™ i5-8250U
Laptop Example 4      | 8      | Intel® Core™ i7-8550U
Laptop Example 5      | 8      | Intel® Core™ i5-8265U
...

Ich wollte ein Array mit mehreren Kriterien erstellen, um einfach den Namen namedes Laptops zurückzugeben. In diesem Fall möchte ich den Namen eines Laptops mit 8 RAM& a zurückgeben, CPUdas enthält i5-.

In der obigen Tabelle würde ich erwarten,

(Array)
Name                  
====================== 
Laptop Example 2       
Laptop Example 5      

Ich habe nicht viel Erfahrung mit Array-Formeln, aber ich konnte entweder alle Laptop-Namen zurückgeben mit8 RAM

=IFERROR(INDEX(Laptops!A$2:A$500,SMALL(IF(Laptops!$B$2:$B$500=8,ROW(Laptops!A$2:A$500)-ROW(Laptops!A$2)+1),ROWS(Laptops!A$2:A2))),"")

oder CPUenthalteni5-

=IFERROR(INDEX(Laptops!A$2:A$500,SMALL(IF(IFERROR(SEARCH("i5-", Laptops!$C$2:$C$500), 0),ROW(Laptops!A$2:A$500)-ROW(Laptops!A$2)+1),ROWS(Laptops!A$2:A2))),"")

ANDAber es gelingt Ihnen nicht, beides mithilfe der Funktion zu kombinieren ? Ich habe es versucht ...

=IFERROR(INDEX(Laptops!A$2:A$500,SMALL(IF(AND(Laptops!$B$2:$B$500="8",IFERROR(SEARCH("i5-", Laptops!$C$2:$C$500), 0),ROW(Laptops!A$2:A$500)-ROW(Laptops!A$2)+1),ROWS(Laptops!A$2:A2))),""))

Es wird jedoch nichts zurückgegeben. Für jede Hilfe wäre ich sehr dankbar.

Antwort1

Ich würde eine Pivot-Tabelle verwenden und dann nach RAM filtern und einen Filter auf die CPU-Spalte anwenden.

Etwas Hilfe dabeiHier

Antwort2

Meine Herangehensweise an Ihre Frage wäre wie folgt

1.- Besorgen Sie sich einige Hilfssäulen

Fügen Sie eine Spalte „CPU-Familie“ hinzu

=left(right(C2;8);2)

Sie können das Feld Ram duplizieren, wenn Sie den RAM beim Filtern sehen möchten.

=B2&"gb"

2.- Pivot-Tabelle einfügen

Markieren Sie den gesamten Datenbereich, drücken Sie STRG+UMSCHALT+Leertaste und gehen Sie zu Einfügen > PivotTable

Hier wählen Sie Ramund CPU Familyals Filter aus. In den Beschriftungsfeldern fügen Sie hinzu Laptop NameundCPU

Bildbeschreibung hier eingeben

Übersetzung:=LEFT(RIGHT(C2;8);2)

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Dies ist mein Ansatz, ohne einzubeziehenVBA

Prost.

verwandte Informationen