Vba:두 문자 사이의 텍스트를 추출하는 방법
VBA에서 다음 사용자 정의 함수를 만들어 두 개의 특정 문자 사이의 텍스트를 추출할 수 있습니다.
Function ExtractBetween(this_text, start_char, end_char) StartPosition = InStr(this_text, start_char) EndPosition = InStr(this_text, end_char) ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1) End Function
그런 다음 이 기능을 사용하여 두 특정 문자 사이의 텍스트를 Excel의 특정 문자로 추출할 수 있습니다.
다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.
예: VBA를 사용하여 두 문자 사이의 텍스트 추출
회사의 다양한 제품에 대한 ID 값과 총 판매량을 포함하는 다음과 같은 데이터 세트가 Excel에 있다고 가정합니다.
VBA를 사용하여 A 열의 각 셀에 대해 괄호 안의 텍스트를 추출하고 결과를 C 열에 반환한다고 가정합니다.
이를 위해 다음 함수를 만들 수 있습니다.
Function ExtractBetween(this_text, start_char, end_char) StartPosition = InStr(this_text, start_char) EndPosition = InStr(this_text, end_char) ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1) End Function
그런 다음 C2 셀에 다음 수식을 입력하여 A2 셀의 텍스트에 대해 괄호 안의 텍스트를 추출할 수 있습니다.
=ExtractBetween( A2 , "(", ")")
그런 다음 이 수식을 클릭하여 C열의 나머지 각 셀로 드래그할 수 있습니다.
이제 C열에는 A열에서 일치하는 각 셀에 대한 텍스트가 괄호 안에 표시됩니다.
참고 : 이 수식은 VBA의 Instr 함수를 사용하여 특정 시작 및 끝 문자의 위치를 추출한 다음 Mid 함수를 사용하여 해당 두 문자 사이의 모든 텍스트를 반환하는 방식으로 작동합니다.
추가 리소스
다음 자습서에서는 VBA를 사용하여 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA: 문자열에서 문자 발생 횟수를 계산하는 방법
VBA:문자열에 다른 문자열이 포함되어 있는지 확인하는 방법
VBA: 특정 텍스트가 포함된 셀 수를 계산하는 방법