간단한 기준으로 셀 찾기

간단한 기준으로 셀 찾기

다음과 같은 데이터가 있습니다.

여기에 이미지 설명을 입력하세요

위치를 찾아야 해(행 번호 가져오기)문자로 시작하는 셀의 경우.

나의 현재 접근 방식은 "도우미" 열을 사용하는 것입니다. ~ 안에지하 1층나는 다음을 입력한다:

=IF(LEFT(A1)="A",1,"")

그리고지하 2층나는 다음을 입력한다:

=IF(LEFT(A2)="A",MAX($B$1:B1)+1,"")

그리고 복사해 가세요. 이는 관심 있는 행을 식별합니다. 마침내C1나는 사용한다:

=IFERROR(MATCH(ROWS($1:1),$B$1:$B$23,0),"")

그리고 복사해 가세요.

여기에 이미지 설명을 입력하세요

내 목표는 "도우미" 열을 제거하는 것입니다.

내가 보는 유일한 두 가지 옵션은 다음과 같습니다.

  • 자동 필터를 사용하세요
  • VBA를 사용하다UDF

자동 필터 접근 방식은 데이터가 새로 고쳐질 때마다 필터를 다시 실행해야 하기 때문에 좋지 않습니다. 그만큼UDF시트가 VBA가 없는 환경에서 작동해야 하기 때문에 접근 방식이 좋지 않습니다.

행 번호를 얻을 수 있는 수식이나 배열 수식이 있습니까? 아니면 "도우미" 열이 붙어 있습니까?

답변1

Ctrl+ Shift+ 를 사용하여 배열 수식으로 입력해 보세요 Enter.

{=SMALL(IF(LEFT($A$1:$A$23)="A",ROW($A$1:$A$23),9E+99),ROW())}

하지만 귀하의 기준은 실제 응용 프로그램보다 더 복잡하다고 생각합니다. LEFT($A$1:$A$23)="A"원하는 기준으로 대체할 수 있으며 여전히 작동합니다.

9E+99"A"로 시작하는 행보다 더 많은 행을 복사하면 이 값이 반환됩니다 . 대신 공백으로 반환되도록 조정할 수 있습니다.

{=IFERROR(SMALL(IF(LEFT($A$1:$A$14)="A",ROW($A$1:$A$14),""),ROW()),"")}

답변2

이것을 시도해 보십시오:
C1에 0을 넣으십시오.
C2에서: =match(indirect("a"&c1+1&":a<last row>",true),"a*",0)+C1
참고: 일치는 대소문자를 구분하지 않습니다. 일치하는 항목을 찾은 후 오류를 관리해야 합니다.

관련 정보