programing

범위 내에서 부분 텍스트 찾기, 인덱스 반환

newstyles 2023. 4. 14. 21:22

범위 내에서 부분 텍스트 찾기, 인덱스 반환

특정 범위에서 부분 텍스트를 찾아서 찾은 텍스트의 셀 색인 아래에 X 행의 값을 구해야 합니다.INDEX와 MATCH 기능을 시도했지만 성공하지 못했습니다.

예시

예: 텍스트의 일부를 찾습니다.ASDFGHJKneeds는 다음 3행 아래의 값을 반환했습니다.I NEED THIS VALUE필요한 값("I NEED THIS VALUE")을 얻기 위해 발견된 셀과 +3의 행 인덱스를 얻으려고 했지만 성공하지 못했습니다.

어떻게 하는지 생각나는 거 없어?

"와일드카드"를 사용하여MATCH따라서 피터의 답변에 따라 H1의 "ASDFGHJK"를 가정하면 이 정규식을 사용할 수 있습니다.

=INDEX(G:G,MATCH("*"&H1&"*",G:G,0)+3)

MATCH는 하나의 열 또는 행만 참조할 수 있으므로 6개의 열을 검색하려면 6개의 MATCH 함수를 사용하여 공식을 설정하거나 다른 접근 방식으로 변경해야 합니다. A2의 검색 데이터를 가정하여 다음 "배열 공식"을 사용해 보십시오.G100

=INDIRECT("R"&REPLACE(TEXT(MIN(IF(ISNUMBER(SEARCH(H1,A2:G100)),(ROW(A2:G100)+3)*1000+COLUMN(A2:G100))),"000000"),4,0,"C"),FALSE)

확인 -ShiftEnter

다음 공식으로 작업을 수행할 수 있습니다.

=인덱스(G:G,MATCH(FALSE,ISERROR(SEARCH(H1,G:G),0)+3)

배열 공식으로 입력해야 합니다. 즉,ShiftEnter --를 누릅니다. 검색 중인 하위 문자열이 셀에 있는 것으로 가정합니다.H1.

같은 문제를 해결하기 위해 구글을 검색하다가 이것을 발견했고, 검색해야 할 두 개의 유사한 서브스트링 "Sun"과 "Sunstruck"이 있었기 때문에 내 상황에서 작동하기 위해 솔루션에 약간의 변경을 가해야 했습니다.제공된 솔루션은 "Sun"을 검색할 때 잘못된 항목을 찾는 것이었습니다.열 B의 데이터

다른 열 C(C1="&B1&" "&B1&" ")를 추가하고, 연결된 문자열의 마지막 엔트리의 첫 번째를 찾기 위한 추가 열인 =COUNTIF(B1:B10),* "&A1&" *">0으로 검색을 변경했습니다.

언급URL : https://stackoverflow.com/questions/15566316/finding-partial-text-in-range-return-an-index