본문 바로가기
카테고리 없음

[VBA] 주소중에 숫자를 와일드카드(*)로 표현하기

by 일등미노왕국 2022. 2. 24.

오픈채팅방에 함께 하고 있는 송파_97_사무직_라니 님의 질문이다.

https://open.kakao.com/o/glXWEB3b

 

유튜브 '엑사남'의 Excel VBA 함께하기

[방암호 : M으로 시작하는 VBA 메세지창 명령어는? 'MsgB**', 힌트 : 6글자, **은 소문자] #엑셀 #excel #VBA #엑사남

open.kakao.com

엑셀 함수가 나쁘다는건 아니다..늘 이야기 하지만 엑셀 함수로 구현할 수 있으면 엑셀 함수로 언능 구현하는게 가성비가 뛰어나다.. 허나 작업이 앞으로 3번이상 반복된다면 이왕 VBA방에 입성하였으면 이번 코드를 통해 한단계 성장할 수 있도록 공부해보는것도 좋을 것 같다.

공부가 되었음해서 LIke 함수와 정규식으로 하는 구문 두개를 만들어 보았다.

육안으로 봐도 정규식이 더 빠를것이다. 이유는 like함수는 전체 주소를 반복하면서 각 주소의 길이만큼 하나씩 변환해 가는 반면 정규식은 해당 패턴을 바로바로 변환해 가면서 처리하기 때문이다.

 

Like 함수를 이용한 주소변환방식

 

정규식을 통한 주소변환

 

참고

string(숫자,"*") -> 숫자의 갯수만큼 [*]을 출력해라

characters(시작위치, 숫자).text = "*"  -> 문장의 특정위치에서 숫자의 갯수만큼 [*] 를 출력해라

주소 번지수 변환(22.02.24).xlsm
0.03MB

 

댓글