노트북 세부 정보가 포함된 다음 표가 있습니다.
(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
&가 CPU
포함된 노트북 이름을 반환하고 싶습니다 i5-
.
위의 표에서 나는 돌아올 것으로 예상합니다
(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+Space를 누른 다음 삽입 > 피벗 테이블로 이동합니다.
Ram
여기서는 및 필터를 선택 하고 CPU Family
레이블 필드에서 추가할 수 있습니다 Laptop Name
.CPU
번역:=LEFT(RIGHT(C2;8);2)
이것은 개입하지 않은 나의 접근 방식입니다.VBA
건배.