2014-09-21 2 views
1

특정 조건에 따라 다른 시트에 하위 목록을 만들 수있는 수식을 쓰려고합니다. 시트 A에 두 개의 열 A & B가 있습니다. A의 해당 셀이 특정 기준을 만족하는 경우에만 셀 B의 값을 시트 2의 새 목록으로 복사하려고합니다. 어떻게하는지 알려주십시오. 그들은 단지 그들이 (일반적으로)에 기록 된 하나 ... 그러나
에 영향을 미칠 수있는특정 조건이 충족되면 수식을 사용하여 다른 시트에 셀 값 복사

답변

1

당신은 당신이 Sheet1의 데이터를 끌어 시트 2의 수식을 쓸 수 있습니다, 다른 셀 값을 복사 할 수식을 사용할 수 없습니다 조건에 따라 ...
예를 들어이 배열 수식은 ( + 를 입력 Ctrl 키 + 교대로 입력) :이 예에서

=IFERROR(INDEX(Sheet1!$B$1:$B$4,SMALL(IF(ISERROR(FIND("o",LOWER(Sheet1!$A$1:$A$4))),9999,ROW(Sheet1!$A$1:$A$4)),ROW())),"") 

, 나는 상태를 "를 사용하고 있습니다 A 열의 값 대소 문자를 구분하지 "... 나를 밖으로 안쪽에서 설명하게

  • ISERROR(FIND("o",LOWER(...)))이 값이있는 경우 우리에게 FALSE을 제공 AN, 'O'TRUE 그렇지 않으면
  • 보다는 것이다 - 문자 'O'를 커튼과 단지 우리가 (당신이 필요에 따라 연장 될 수 있음) 세포 Sheet1!$A$1:$A$4의 배열에 노력하고, 단일 값을주고 - 그래서
  • IF(ISERROR(...),9999,ROW(...)) 뜻이 우리에게 TRUEFALSE 값의 배열을 제공한다는 'O'우리가 없었다 경우 값 9999를 얻습니다. 그렇지 않으면 배열의 셀 행 번호를 얻습니다. 그래서 우리에게 배열 o를줍니다. 9999과 행 번호
  • SMALL(...,ROW())의 조합을 사용하면 배열에서 해당 값 중 하나를 선택할 수 있습니다.이 경우 크기 순서가있는 항목이며, 우리는 카운터로 (즉, ROW())를 사용하고 있습니다. Sheet2에서! A1 - ROW()은 1이고 배열에서 가장 작은 값을 얻습니다.) ... 헤더 행이 있다면 ROW()-1과 같이 할 수 있습니다. 실제로 Sheet1의 행 번호 정렬 된 목록을 통해 인덱싱하고 있습니다 일치하는 우리의 조건은
  • INDEX(Sheet1!$B$1:$B$4,...)
  • 은 우리에게
  • 때때로 우리가 일치하는 행의 목록에 우리의 위치에 관한 Sheet1에있는 B 열에서 값을 제공하는 것입니다 우리의 9999 (조건에 일치하지 않는 모든 셀에 대한 - 이들은 SMALL으로 목록의 끝에 정렬됩니다. 따라서 INDEX은 오류가 발생합니다 ... 색인이 범위를 벗어납니다. 따라서 공백으로 바꿀 수 있습니다.

희망이 있습니다. 행운을 빕니다! 그리고 ...

를 입력 Ctrl 키 + 시프트 + 으로 배열 수식을 입력해야합니다
관련 문제