VBA 찾기 기능 | VBA 찾기 기능을 사용하는 방법? (예시)

Excel VBA 찾기

일반 워크 시트에서 찾기를 사용할 때 키보드 단축키 CTRL + F를 누르고 찾으려는 데이터를 입력하고 원하는 값이 아니면 다음 일치 항목으로 이동합니다. 일치 항목이 많으면 지루한 작업이지만 우리는 VBA에서 FIND를 사용하여 작업을 수행하고 정확한 일치 항목을 제공하며 하나는 찾을 내용, 찾을 위치 및 볼 위치의 세 가지 인수를 사용합니다.

VBA로 이동하여 매크로에서 찾기 기능을 사용하기 전에 먼저 Excel에서 찾기 기능이 무엇인지 배워야합니다. 편집 그룹 아래의 홈 탭에서 일반 Excel에서 셀 범위 또는 전체 워크 시트에서 문자열이나 값을 찾는 데 사용되는 찾기 기능을 찾을 수 있습니다.

이것을 클릭하면 두 가지 옵션이 나타납니다.

하나는 쉽게 찾을 수 있습니다.

다른 기능을 여는 옵션 모드도 있음을 알 수 있습니다.

Find What, Within, Search 및 look in의 네 가지 제약 조건으로 찾기 알고리즘을 수행합니다.

Excel의 두 번째 옵션은 문자열을 찾을 때 사용되지만 다른 값으로 대체 할 항목을 찾아서 바꾸는 것입니다.

함수 구문 찾기

우리는 기본 엑셀에서 찾기가 무엇인지 위에서 배웠습니다. VBA에서는 수동으로 코드를 작성하지만 기능은 일반 Excel과 동일합니다. 먼저 구문을 살펴 보겠습니다.

Expression.Find (What, lookin,….)

찾고있는 값이 Excel 함수로 발견되면 값이있는 셀을 반환하고 값이 없으면 함수의 객체가 아무것도 설정되지 않습니다.

매크로의 표현식은 범위 1 또는 범위 2와 같이 정의 된 범위입니다. 특정 값을 검색하려는 키워드는 무엇입니까? Lookin은 우리가 검색하려는 것이 주석, 공식 또는 문자열 인 키워드입니다. 마찬가지로 Find 기능에는 선택 사항 인 다른 제약이 있습니다. 필요한 유일한 필수 필드는 검색하려는 값입니다.

기본적으로 VBA는 Excel에 검색하려는 값인 하나의 필수 인수가 있음을 찾습니다. 나머지 제약 조건은 선택 사항이며 찾기 기능에는 많은 제약 조건이 있습니다. 찾기 기능은 Excel의 찾기 기능과 유사합니다.

찾기 기능의 매개 변수는 셀 범위입니다. 값을 찾으려는 범위와 같습니다. 열 수 또는 셀 수 또는 전체 워크 시트 일 수 있습니다.

이 VBA FIND 기능 Excel 템플릿을 여기에서 다운로드 할 수 있습니다 – VBA FIND 기능 Excel 템플릿

예 1

데이터에 다음 값이 있다고 가정합니다.

동일한 데이터에서 "Aran"을 찾으려고합니다.

  • VBA 코드를 작성하려면 VBA 코드를 작성하려면 Excel에서 개발자 탭을 활성화해야합니다.

  • 아래와 같이 다음 코드를 작성하여 코드 작성을 시작합니다.
하위 샘플 ()

Dim FindS As String

범위로 Dim Rng

FindS = InputBox ( "검색 할 값 입력")

시트 포함 ( "Sheet1") .Range ( "A : A")

  • 샘플은 서브에 주어진 함수 이름입니다.
  • 찾기는 입력하려는 사용자가 검색 할 문자열입니다.
  • Rng는 범위에 대해 취한 변수입니다.
  • 이제 사용자에게 아래 스크린 샷과 같은 값을 입력하도록 요청합니다.

  • 이제 모듈에서 찾기 기능을 정의합니다.

  • 이 함수는 주어진 범위에서 사용자가 입력 한 값을 찾습니다.
  • 이제 다음 인수로 함수를 닫습니다.

  • 이제 코드를 먼저 실행하면 사용자에게 값을 묻는 메시지가 표시됩니다.

  • 코드가 완료되면 데이터가 발견 된 셀을 반환합니다.

예제 # 2

위의 예에서는 4 개의 고유 한 이름이 있었지만 데이터에 두 개 이상의 이름이있는 경우 (예 : 아래 데이터를 고려)

위 데이터에서 Aran이라는 이름이 두 번 반복되는 것을 볼 수 있습니다. Excel에서 Aran이라는 이름을 찾아야하는 경우 A2 셀에서 해당 이름을 찾아 중지하지만 A6 셀에 A2와 유사한 다른 값이 있습니다. 그 값을 가져 오는 방법? 도움말에서 Find (What, After) 구문이 제공됩니다.

After는 데이터를 검색하려는 참조가있는 셀을 정의합니다.

위 데이터에 대한 코드를 작성해 보겠습니다.

  • VBA에서 코드를 작성할 수 있도록 옵션에서 개발자 탭을 활성화 한 다음 Excel의 리본 사용자 지정에서 항상 활성화해야합니다.
  • VBA에서 우리는 코드를 작성하는 모듈 인 Microsoft Excel 개체를 얻습니다.

  • 이전에는 시트 1에서 작업하고 있었으므로 이제 시트 2에서 작업하고 있으므로 다른 모듈에 대해 시트 2를 선택하면 빈 페이지가 나타납니다.

  • 이제 먼저 함수를 SUB Sample2 ()로 정의하여 코드 작성을 시작하고 Enter 키를 누릅니다.

  • 이제 우리는 우리의 변수를 정의하는 주요 부분으로 들어가기 시작할 함수를 정의했습니다.

  • Find 변수에 무엇이 있어야하는지 정의하십시오.

  • 이 예에서 시트 2 인 작업중인 시트를 선택합니다.

  • 이제 A2 셀 다음에 사용자가 입력 한 텍스트를 찾을 수 있으므로 찾기 기능을 아래와 같이 정의합니다.

  • 이제 with 및 if 조건을 종료하여 코드를 닫습니다.

위의 코드가하는 일은 A2 셀 뒤의 문자열을 검색하고 발견되는 모든 셀을 반환하는 것입니다.

기억해야 할 사항

  1. 먼저 VBA를 사용하려면 개발자 탭을 활성화해야합니다.
  2. 우리가 찾아야하는 구체적인 가치는 무엇입니까?
  3. 값을 찾을 수없는 경우 함수의 개체는 아무것도 설정되지 않습니다.