I was finally able to make this work by using some info from you and an old VB for applications book. Here is the code that I used. Maybe you could critique my work. I do have a minor problem the 0's are not recognized when they are the first character in the string. How can I fix this. I am also trying to protect the sheet so the user can't make changes. I can do this but every time I run the macro it resets that property and the macro won't work anymore.
Private Sub cmdFormatNumber_Click()
'declare variables and assign address to Worksheet object variables
Dim strOldNumber As String, strNewNumber As String, lngPos1 As Long, lngPos2 As Long, lngPos3 As Long
Dim intPosOpen As Integer, intPosClose As Integer, intPosMinus As Integer, rngCell As Range
'Beginning in cell A2, undo the phone number format
Set rngCell = Range("a2")
Do Until rngCell.Value = ""
'Define the starting positions for Pos 1, 2, 3
intPosOpen = InStr(1, rngCell.Value, "(")
intPosClose = InStr(1, rngCell.Value, ")")
intPosMinus = InStr(1, rngCell.Value, "-")
'Strip the phone number format from the phone number and place an asterick at the end
OldNumber = rngCell.Value
lngPos1 = Mid(String:=rngCell.Value, Start:=intPosOpen + 1, Length:=3)
lngPos2 = Mid(String:=rngCell.Value, Start:=intPosClose + 2, Length:=3)
lngPos3 = Mid(String:=rngCell.Value, Start:=intPosMinus + 1, Length:=4)
'Concatenate the variables together with the asterik at the end
strNewNumber = lngPos1 & lngPos2 & lngPos3 & "*"
'Assign the NewNumber to the appropriate cell in column B
rngCell.Offset(columnoffset:=1).Value = strNewNumber
'Assign the address of the cell in the next row to the rngCell variable
Set rngCell = rngCell.Offset(rowoffset:=1)
Thanks for all of your help,