Excel에서 VBA의 Mid 기능을 사용하는 방법(예제 3개)

  • 이 공유
Hugh West

엑셀에서 VBA 로 작업하면서 우리가 사용하는 가장 중요하고 널리 사용되는 기능 중 하나는 VBA 중간 기능 입니다. 문자열을 입력으로 사용하고 문자열 중간에서 지정된 수의 문자를 출력으로 반환합니다. 오늘 이 글에서는 VBA Mid 기능 을 적절한 예제와 그림으로 어떻게 활용하는지 보여드리겠습니다.

8번째 문자부터 시작하여 문자열 “Angela Catherine Nevills” 에서 9 자를 반환합니다. "캐서린" 입니다.

연습 워크북 다운로드

이 연습북을 다운로드하여 이 글을 읽고 계십니다.

VBA Mid Function.xlsm

Excel에서 VBA의 Mid Function 소개

기능 목표:

Mid 기능은 값을 입력으로 사용하고 값의 지정된 위치에서 시작하여 지정된 수의 문자를 출력으로 반환합니다.

값은 문자열, 숫자 또는 부울 일 수 있습니다.

예를 들어 Mid("Angela Catherine Nevills",8,9)를 삽입하면 "Catherine" .

Mid(12345,2,3) , 삽입하면 234.

삽입 Mid(False,2,3) , als 를 얻게 됩니다.

구문:

Mid의 구문 VBA 의 기능 is:

=Mid(String,Start as Long,[Length])

인수:

인수 필수 / 선택 설명
문자열 필수 여러 문자가 반환됩니다.
시작 필수 반환될 문자열의 시작 문자입니다.
Length 선택 사항 반환될 문자 수입니다. 기본값은 1입니다.

반환 값:

가운데부터 지정된 수의 문자를 반환합니다.

3 Excel에서 VBA의 Mid 함수 예제

이번에는 Mid 함수 of VBA 를 몇 가지 예와 함께 자세히 설명합니다.

1. Excel에서 VBA의 Mid 기능을 사용하여 일부 ID의 중간에서 주어진 수의 문자 분리

여기에 IDs 이 있는 데이터 세트가 있습니다. Saturn Group이라는 회사의 일부 직원 이름 .

여기서 각 4번째 ~ 7번째 자는 ID는 각 직원의 입사년도를 나타냅니다.

이제 VBA Mid 함수 를 이용하여 사용자 정의 함수 를 개발하겠습니다. 직원 ID 에서 각 직원의 입사 연도를 추출합니다.

다음 VBA 코드를 사용할 수 있습니다.

VBA 코드:

1626

참고: 이 코드 Joining_Year 라는 함수를 만듭니다.

출력:

다음을 실행합니다. ID를 인수로 사용하여 워크시트의 모든 셀에서 기능을 수행합니다.

여기서 D4 셀에 수식을 입력했습니다.

=Joining_Year(B4)

첫 사원의 입사년도인 2021 이 반환되었습니다.

이제 핸들 을 채워 나머지 직원의 입사 연도를 가져옵니다.

코드 설명:

  • 먼저, Function Joining_Year(ID) 행에서 ID를 입력으로 사용하는 Joining_Year 라는 함수를 선언합니다.
  • 그런 다음 Joining_Year = Mid(ID, 4, 4) .
  • <행으로 위치 4 에서 시작하는 ID에서 4 자를 추출합니다. 28> End Function 줄은 함수의 끝을 선언합니다.

2. Excel에서 VBA의 Mid 기능을 사용하여 일부 이메일 주소에서 확장자 추출

이제 직원의 이메일 주소가 포함된 데이터 세트에 새 열을 추가했습니다.

이번에는 VBA Mid 기능을 사용하여 이메일 주소의 확장자를 추출합니다.

VBA 코드 는 다음과 같습니다.

VBA 코드:

1978

참고: 이 코드는 Extension 이라는 함수를 생성합니다.

출력:

다음을 실행합니다. 이메일이 있는 워크시트의 모든 셀에서 기능Address 를 인수로 사용합니다.

여기서 E4 셀에

=Extension(D4) <수식을 입력했습니다. 0>첫 번째 이메일 주소의 확장자를 반환했습니다.

그런 다음 채우기 핸들 을 드래그하여 모든 이메일의 확장자를 추출할 수 있습니다. 주소.

코드 설명

  • 먼저 다음 함수를 선언합니다. Function Extension(Email_Address) 줄의 입력으로 임의의 이름을 사용하는 Extension .
  • 그런 다음 for-loop<2로 반복을 시작합니다> 이메일 주소 의 각 문자를 확인하여 If Mid(Email_Address, i, 1) = “@” Then<2 행으로 @ 인지 여부를 확인합니다> .
  • @ 를 찾으면 Email Address 에서 Extension = Mid(Email_Address, i + 1, Len(Email_Address) – (i + 4)) .
  • 마지막으로 함수의 종료를 선언합니다.

3. 일부 텍스트를 확인하여 특정 텍스트가 포함되어 있는지 확인

Mid 기능 의 가장 중요한 용도 중 하나는 텍스트에 특정 텍스트가 포함되어 있는지 여부를 확인하는 것입니다. .

이메일 주소 “gmail” 이라는 용어가 포함되어 있는지 확인하는 기능을 개발해 봅시다.

다음 VBA 코드:

VBA 코드:

7183

참고: 이 코드는 함수를 생성합니다. ~라고 불리는 확인 중 .

출력:

모든 셀에서 이 함수 실행 인수로 두 개의 텍스트가 있는 워크시트의

여기 E4 셀에 수식을 입력했습니다.

=Checking(D4,"gmail")

첫 번째 이메일 주소가 Gmail 주소이기 때문에 yes 를 반환했습니다.

그런 다음 Fill Handle 모든 이메일 ID에 대해 동일한 작업을 수행합니다.

코드 설명:

  • 먼저 Function Checking(Text1,Text2) 행에서 두 개의 텍스트를 인수로 사용하는 Checking 이라는 함수를 선언합니다.
  • 그런 다음 위치 1 에서 시작하여 Text1 의 각 세그먼트를 확인하는 for 루프를 시작하여 Text2 와 같은지 여부를 확인합니다. , 줄 If Mid(Text1, i, Len(Text2)) = Text2 Then .
  • Text2 를 찾으면 “Yes” 를 반환하고 그렇지 않으면 “No” 를 반환합니다.
  • 마지막으로 End Function 줄로 함수를 마무리합니다.

기억해야 할 사항

  • Mid 함수 첫 번째 인수는 항상 문자열일 필요는 없습니다. 문자열 , 숫자 또는 부울 값일 수도 있습니다.
  • 그러나 두 번째 세 번째 인수는 숫자 여야 합니다. 정수 또는 분수 일 수 있지만 숫자 여야 합니다. 분수 인 경우 중간function 은 가장 가까운 정수 .
로 변환합니다.

Hugh West는 업계에서 10년 이상의 경험을 가진 고도로 숙련된 Excel 트레이너이자 분석가입니다. 그는 회계 및 재무 학사 학위와 경영학 석사 학위를 보유하고 있습니다. Hugh는 교육에 대한 열정을 가지고 있으며 따라하기 쉽고 이해하기 쉬운 독특한 교수법을 개발했습니다. Excel에 대한 그의 전문 지식은 전 세계 수천 명의 학생과 전문가가 자신의 기술을 향상시키고 경력에서 탁월하도록 도왔습니다. Hugh는 자신의 블로그를 통해 자신의 지식을 전 세계와 공유하고 개인과 기업이 잠재력을 최대한 발휘할 수 있도록 무료 Excel 자습서 및 온라인 교육을 제공합니다.