반응형

출처: http://blog.naver.com/PostView.nhn?blogId=bluepascal&logNo=70008232085&beginTime=0&jumpingVid=&from=search&redirect=Log&widgetTypeCall=true



인터넷상에서 내용을 마우스로 긁어서 엑셀에 붙여넣을때
또는 아래한글 문서를 복사해서 엑셀에 붙여넣을때
또는 엑세스등 DB를 쿼리등으로 불러 왔을때

이상한 문자가 있어 고생한 경험이 있었을 법합니다.


이들 공백(유령)문자, 음표문자등을 지우는 방법은 다양하고, 이미 많은 분들이 쉽게 문제를 해결하고 있는 걸로 알고 있습니다만.....


VBA로 처리한다면 그냥 단순하게 아래처럼 한줄의 구문을 이용하시면 됩니다.


Cells.Replace ChrW(문자번호), "바꿀문자"

참고) 개행문자(라인피드)는 10번, 캐리지리턴(음표)문자는 13번, 공백(유령)문자는 160번입니다. 나머지 것들은 엑셀에서 code함수 및 char함수로 번호를 파악하시면 되겠습니다.


참고2) 구문실행방법은 Alt+F11 키를 눌러 VBE창을 연후 → Gtrl+G 키를 눌러 직접실행창으로 간 다음에 한줄 구문을 작성하고 엔터치면 구문이 실행됩니다.


가령 공백(유령)문자때문에 계산이 안된다고 가정하면

Cells.Replace ChrW(160), ""

이 구문을 실행하시면 간단히 정상상태로 돌아옵니다.



또는 이상한 음표모양의 문자가 있는데 선택도 안되고
양이 너무 많아 clean, substitute 함수를 이용하기 귀찮은 경우

Cells.Replace ChrW(13), ""

위 구문 한줄을 실행하면 쉽게 지워집니다.


반응형

+ Recent posts