엑셀에서 숫자를 입력했는데 글자 서식이 텍스트인 경우가 있습니다 . 이럴때 이 매크로를 이용하면 간단하게 셀서식을 숫자로 변환할수가 있습니다. 바꾸고자 하는 범위를 사용자가 지정하면 지정된 범위의 셀들의 서식이 변하는 형식입니다. 자신에 맞게 응용해서 활용하면 좋을듯합니다.
■ 텍스트로 저장된 숫자 데이터를 실제 숫자 데이터로 변환하는 프로시저
※ 아래 예제는 엑사모 latinum님이 만든 소스입니다.
제가 필요에 의해서 블로그에 정리하는 차원에서 올린소스이니 착오없으시길 바랍니다.
Option Explicit Sub dhTxt2Number() Dim rngArea As Range Dim strFormat As String Const Es As String = "MagicSheet & 엑사모" On Error GoTo e1 Set rngArea = Application.InputBox(Prompt:="텍스트로 저장된 숫자를 변환합니다", Title:=Es, Default:=Selection.Address, Type:=8) If rngArea Is Nothing Then Else strFormat = rngArea.Cells(1).NumberFormatLocal '첫번째 셀의 표시형식을 나머지에도 적용한다 If InStr(strFormat, "@") Then strFormat = "G/표준" '표시형식이 텍스트인 경우라면 일반 서식으로 지정한다. dhConvertNumber rngArea, strFormat End If e1: End Sub Private Sub dhConvertNumber(rngArea As Range, Optional strNumberFormat = "G/표준") Dim c As Range For Each c In rngArea.Areas '사용자로부터 넘겨 받은 범위를 순환한 뒤 With c .NumberFormatLocal = strNumberFormat '서식을 변경한 뒤 .Value = .Value '값을 변경한다 End With Next c End Sub | cs |
'IT 이야기' 카테고리의 다른 글
[엑셀 VBA] 숨겨진 행 삭제하는 vba (0) | 2018.05.15 |
---|---|
[엑셀 VBA] 활성셀에 그림삽입하기 (0) | 2018.05.14 |
[엑셀 VBA] 활성셀의 열주소를 반환하는 vba (0) | 2018.05.13 |
[엑셀 VBA] VBA를 이용해 IE를 열고 창을 최대화하기 (0) | 2018.05.12 |
[엑셀 VBA] 특정 글자만 찾아 색상 바꾸기 (0) | 2018.05.11 |
[엑셀 VBA] 일정한 범위에서 중복되지 않는 난수 배열 만들기 (0) | 2018.05.10 |
티스토리 말머리 이미지 (0) | 2018.05.09 |
댓글