從具有多個條件的資料中提取數組公式

從具有多個條件的資料中提取數組公式

我有下表包含筆記型電腦的詳細信息

(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
...

我正在尋找使用多個條件創建一個數組來簡單地返回name筆記型電腦的。在本例中,我想返回帶有8 RAM&a 的筆記型電腦的名稱。CPUi5-

在上面的表格中,我期望返回

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

我對數組公式沒有太多經驗,但我已經能夠返回所有筆記型電腦名稱8 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))),"")

CPU含有i5-

=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))),"")

但無法使用該AND功能將兩者結合?我努力了...

=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))),""))

但是,它不會返回任何內容。任何幫助將不勝感激。

答案1

我將使用資料透視表,然後對 RAM 進行過濾,並將過濾器應用於 CPU 列。

一些幫助做到這一點這裡

答案2

我對你問題的處理方式是這樣的

1.- 取得一些輔助列

新增“CPU 系列”列

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

如果您在篩選時要看到 ram,則可以複製 Ram 字段

=B2&"gb"

2.- 插入資料透視表

選擇整個資料範圍,按 CTRL+SHIFT+空白鍵,然後前往“插入”>“資料透視表”

在這裡您可以選擇RamCPU Family作為過濾器,在標籤欄位上您可以新增Laptop NameCPU

在此輸入影像描述

翻譯:=LEFT(RIGHT(C2;8);2)

在此輸入影像描述

在此輸入影像描述

在此輸入影像描述

在此輸入影像描述

在此輸入影像描述

這是我的方法,不涉及VBA

乾杯。

相關內容