운송의 A 열과 장비의 A 열이 모두 위치 번호를 참조하고 장비 유형이 텍스트로 지정되고 피벗 테이블에서 계산되는 3 가지 “배송”, “장비”및 “재고”시트를 참조해야합니다. “재고”에서. 각 위치 번호와 관련된 여러 유형의 장비가 있으며 일부 위치 번호는 아직 연결되지 않았습니다.
평범한 영어로, 나는 “배송지의 위치 번호가 장비의 위치 번호와 일치하고 장비 유형이 재고 A9와 일치하거나 장비 유형이 재고 A8과 일치하고, 추적 번호를 열 K에 반환하고, 그렇지 않으면 빈 값을 반환합니다”라고 말하려고합니다.
내 공식은
=IF(AND(Equipment!A:A=Shipping!A2,OR(Equipment!C:C=Inentory!A8,Equipment!C:C=Inentory!A9)),Equipment!K:K,"").
반환 할 올바른 값이 있고 논리적으로 작동한다는 것을 알고 있지만 어쨌든 거짓 값이 반환되므로 누락 된 복잡한 점이 있음을 알고 있습니다. 어떤 도움?
답변
여기 몇 가지 문제가 있습니다.
일반적으로 Excel 수식은 배열을 입력으로 처리하지 않으므로 (Enter 키를 누르면) 수식은 범위의 첫 번째 셀만 비교합니다.
당신은 사용하여 배열 수식을 입력 할 경우 Ctrl 키 + 시프트 + 입력 은 전체 범위와 비교하지만 당신의 또는 과 및 기능 (개별적으로하지 각 행에 대해) 전체 범위에 대해 하나의 참 / 거짓으로 그 아래로 단순화됩니다.
따라서 배열 수식을 사용하면 다음과 같은 것을 사용할 수 있습니다.하지만 전체 열 배열을 사용하는 경우 배열 수식이 매우 느려질 수 있습니다 (각 셀에 ~ 1M 셀이 포함되어 있기 때문에 실제로 범위를 정의하는 것이 훨씬 낫습니다).
=index(Equipment!K:K,
match(Shipping!A2,
if(((Equipment!C:C=Inentory!A8)+(Equipment!C:C=Inentory!A9))>0,Equipment!A:A,0)
,0)
)