Vba: 문자열에서 문자 발생 횟수를 계산하는 방법
다음 기본 구문을 사용하여 VBA를 사용하여 문자열에서 문자 발생 횟수를 계산할 수 있습니다.
Sub CountOccurrences()
Dim i As Integer
'Specify character to look for
my_char = "/"
'Count occurrences in each string in B2:B12 and display results in C2:C12
For i = 2 To 12
Count = (Len(Range(" B " & i)) - Len(Replace(Range(" B " & i), my_char, ""))) / Len(my_char)
Range(" C " & i) = Count
Next i
End Sub
이 특정 예에서는 B2:B12 범위의 각 셀에서 슬래시( / )의 발생 횟수를 계산하고 C2:C12 범위의 결과를 표시합니다.
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: VBA를 사용하여 문자열의 문자 발생 횟수 계산
다양한 농구 선수의 이름과 그들이 게임에서 플레이할 수 있는 포지션을 보여주는 다음과 같은 데이터 세트가 Excel에 있다고 가정해 보겠습니다.
Position 열의 각 문자열에서 슬래시( / )의 개수를 계산한다고 가정해 보겠습니다.
이를 위해 다음 매크로를 생성할 수 있습니다:
Sub CountOccurrences()
Dim i As Integer
'Specify character to look for
my_char = "/"
'Count occurrences in each string in B2:B12 and display results in C2:C12
For i = 2 To 12
Count = (Len(Range(" B " & i)) - Len(Replace(Range(" B " & i), my_char, ""))) / Len(my_char)
Range(" C " & i) = Count
Next i
End Sub
이 매크로를 실행하면 다음과 같은 출력이 나타납니다.
C 열의 값은 B 열의 일치하는 문자열에서 슬래시 발생 횟수를 표시합니다.
예를 들어:
- Guard /Forward 문자열에는 슬래시가 1 개 포함되어 있습니다.
- Guard 문자열에는 슬래시가 0 개 포함되어 있습니다.
- Guard 문자열에는 슬래시가 0 개 포함되어 있습니다.
- Forward/Center 문자열에는 슬래시가 1 개 포함됩니다.
등등.
다른 문자의 발생 횟수를 계산하려면 매크로에서 my_char 변수의 문자를 변경하면 됩니다.
추가 리소스
다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA:문자열에 다른 문자열이 포함되어 있는지 확인하는 방법
VBA:범위 내 행 수를 계산하는 방법
VBA: COUNTIF 및 COUNTIFS 함수 작성 방법