보통 다른 소스로부터 데이터를 카피앤 페이스트하여 엑셀에 붙여넣으면
공백을 제거해 줘야 하는 경우가 있습니다.
특히 value 함수를 이용해서 숫자로 바꾸려고 하거나 할 때
앞 뒤로 공백이 있거나, 중간에 공백이 있으면
!value 에러가 뜨면서 변환이 안되거든요.
일반적인 경우라면 아래와 같은 방식으로 제거가 가능합니다.
=TRIM(A1) ' 문장 앞 뒤의 공백 제거
=SUBSTITUTE(A1,CHAR(160),"") 'unicode 160(= )을 제거
=SUBSTITUTE(A1," ","") ' 일반 공백(char(32))를 제거
그러나, 제가 이번에 만난 녀석은 매우 독한 녀석이었어요.
계속 제거하려고 해 봐도 제거가 되지 않고, =len(A1)으로 길이를 확인해 보면
4가 나와야 하는데 16개의 공백이 추가되어 20이 나오는 상황이었죠.
공백부분을 unichar함수로 조사하면 160이 나와서 별 문제 없어보이는데
CODE(MID(A1,5,1))함수를 써서 조사해 봤더니 63번 값이 나오더군요.
이 문자는 Excel에서 인식하지 못하는 글자를 반환할 때 나타나는 값입니다.
결국 저는 이 공백을 제거할 수가 없었어요.
substitute 함수로도 제거가 안되는 케이스입니다.
어쩔 수 없이 처음으로 공백이 나타나는 위치를 찾아서
mid함수를 써서 가져왔어요.
63번 값은 char(63)으로 재현할 수도 없어서 참 곤란한 경우입니다.
아무튼 완벽한 해결 방법은 아니지만 도움이 되셨으면 좋겠어요.
반응형
'Tech Stuff > Software' 카테고리의 다른 글
스마트폰 키보드 단축어 설정으로 긴 내용도 쉽게 (0) | 2024.06.03 |
---|---|
OneUI 6.1 SetEdit 막힘. 카메라 소리 안나게 하는 법 (0) | 2024.06.02 |
크롬드라이버 오류 발생시 대처법 (0) | 2023.08.21 |
엑셀에서 공백 없애기 끝판왕 (0) | 2023.08.21 |
MS 워드 커서 이동 불가 해결 방법 (0) | 2023.02.27 |