2011-12-14 8 views
0

私はExcelスプレッドシートに保存した数千の電話番号のリストをフォーマットするためのVBAスクリプトを作成しようとしています。これまでのところ、私はこれを持っていますが、私はそれを実行するときに電話番号をフォーマットしません。セルが空だが誰かが私が間違っているのを見ている人の数字をフォーマットしていない場合は、値NULLを追加しますか?電話番号をフォーマットするためのVBAスクリプト

Sub CheckPhoneNumber() 
Dim retNumber As String 

Range("K3").Activate 

Do Until ActiveCell.Row = 3746 
If ActiveCell.Value = "" Then 
ActiveCell.Value = "NULL" 
Else 
For i = 1 To Len(ActiveCell.Value) 
    If Asc(Mid(ActiveCell.Value, i, 1)) >= Asc("0") And Asc(Mid(ActiveCell.Value, i, 1)) <= Asc("9") Then 
     retNumber = retNumber + Mid(ActiveCell.Value, i, 1) 
    End If 
Next 
If Len(retNumber) > 10 Then 
    cleanPhoneNumber = Format(retNumber, "(+#) 000-000-0000") 
Else 
    cleanPhoneNumber = Format(retNumber, "000-000-0000") 
End If 
End If 
ActiveCell.Offset(1, 0).Activate 

Loop 
End Sub 

答えて

1

cleanPhoneNumberをシートに戻して忘れてしまったようですか?最終的なend ifの前にActiveCell.Value = cleanPhoneNumberが必要です。