728x90

전화번호 다루기


전화번호는 02,031 과 같은 유선전화번호와 010, 011, 016 과 같은 휴대폰번호, 070 인터넷전화번호, 1588, 1544와 같은 지능망번호, 특수번호 112, 119, 131 등이 있습니다.


아래 코드는 전체를 다 보기 편하게 분류할 순 없고 휴대폰, 유선번호, 인터넷번호만 편하게 정리하도록 했습니다.

휴대폰 번호만 보기좋게 정렬하고자 한다면 .....

=IF(LEN(SUBSTITUTE(A1,"-",""))=11,TEXT(SUBSTITUTE(A1,"-",""),"000-0000-0000"),TEXT(SUBSTITUTE(A1,"-",""),"000-000-0000"))

중간에 - 가 들어가 있는 경우에도 모두 공백으로 지우고 나서 TEXT 정렬을 합니다.


Sub 전화번호정리()
    Dim rngAll  As Range
    Dim rngC    As Range
   
    Application.ScreenUpdating = False    '// 화면 업데이트 (일시) 중지
    ActiveCell.Select       '// 현재셀이 위치한 곳
    Set rngAll = Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(3))     
    'Set rngAll = Selection     '// 선택된 범위만 지정하려고 할 때
    For Each rngC In rngAll
        Select Case Len(rngC)
            Case 8
                rngC.Offset(0, 1).Value = Format(rngC.Value, "0000-0000")
            Case 9
                rngC.Offset(0, 1).Value = Format(rngC.Value, "00-000-0000")
            Case 10
                If Left(rngC, 2) = "02" Then
                    rngC.Offset(0, 1).Value = Format(rngC.Value, "00-0000-0000")
                Else
                    rngC.Offset(0, 1).Value = Format(rngC.Value, "000-000-0000")
                End If
            Case 11
                rngC.Offset(0, 1).Value = Format(rngC.Value, "000-0000-0000")
        End Select
    Next rngC
   
    Set rngAll = Nothing  '// 변수 초기화
    MsgBox "완료"

End Sub

블로그 이미지

Link2Me

,