| Sub Click(Source As Button) |
| |
| Dim ws As New NotesUIWorkspace |
| Dim Proc As NotesDocument |
| |
| Set Proc = ws.CurrentDocument.Document |
| |
| Dim Phone List As String |
| Dim findArray(9) As String |
| Dim replaceArray(9) As String |
| Dim strArea As String |
| Dim strCountry As String |
| Dim strLine As String |
| Dim strExtension As String |
| |
| Dim strCheckArea As String |
| Dim strCheckLine As String |
| Dim strCheckNewArea As String |
| Dim strCheckNewLine As String |
| Dim strCheckCountry As String |
| Dim strCheckNewCountry As String |
| |
| Dim intLengthComplete As Integer |
| Dim intLengthLastPart As Integer |
| |
| findArray(0) = " " |
| findArray(1) = "/" |
| findArray(2) = "\" |
| findArray(3) = "-" |
| findArray(4) = "(" |
| findArray(5) = ")" |
| findArray(6) = "|" |
| findArray(7) = "~" |
| findArray(8) = "#" |
| findArray(9) = "'" |
| |
| replaceArray(0) = " " |
| replaceArray(1) = " " |
| replaceArray(2) = " " |
| replaceArray(3) = " " |
| replaceArray(4) = " " |
| replaceArray(5) = " " |
| replaceArray(6) = " " |
| replaceArray(7) = " " |
| replaceArray(8) = " " |
| replaceArray(9) = " " |
| |
| |
| tmpPhone = Replace(Proc.ParserFieldComplete(0),findArray , replaceArray) |
| |
| DelimCount = 1 |
| |
| Erase Phone |
| |
| If tmpPhone <> "" Then |
| varPhone = Split(tmpPhone, " ") |
| |
| If Ubound(varPhone) = 0 Then |
| |
| strCountry = Left(varPhone(0),1) |
| |
| If strCountry = "+" Then |
| Proc.ParserFieldCountry= Left(varPhone(0),3) |
| Else |
| Proc.ParserFieldCountry= Left(varPhone(0),1) |
| End If |
| |
| intLenthComplete = Len(varPhone(0)) |
| intLengthLastPart = Len(Proc.ParserFieldCountry(0)) |
| |
| varPhone(0) = Right(varPhone(0),(intLenthComplete - intLengthLastPart)) |
| strArea = Left(varPhone(0),4) |
| |
| Proc.ParserFieldArea = strArea |
| |
| intLengthLastPart = Len(Proc.ParserFieldArea(0)) |
| intLenthComplete = Len(varPhone(0)) |
| varPhone(0) = Right(varPhone(0),(intLenthComplete - intLengthLastPart)) |
| |
| strExtensionCheck = Right(varPhone(0),1) |
| |
| If strExtensionCheck = "0" Then |
| Proc.ParserFieldLine = Left(varPhone(0),Len(varPhone(0))-1) |
| Proc.ParserFieldExtension = Right(varPhone(0),1) |
| Else |
| Proc.ParserFieldLine = varPhone(0) |
| End If |
| |
| Elseif Ubound(varPhone) = 1 Then |
| |
| Call Proc.ReplaceItemValue("ParserFieldCountry",varPhone(0)) |
| Call Proc.ReplaceItemValue("ParserFieldArea", Left(varPhone(1),4)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",Right(varPhone(1),Len(varPhone(1))-4)) |
| If Right(Proc.ParserFieldLine(0),1) = "0" Then |
| Call Proc.ReplaceItemValue("ParserFieldExtension",Right(Proc.ParserFieldLine(0),1)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",Left(Proc.ParserFieldLine(0),Len(Proc.ParserFieldLine(0))-1)) |
| End If |
| Elseif Ubound(varPhone) = 2 Then |
| |
| Call Proc.ReplaceItemValue("ParserFieldCountry",varPhone(0)) |
| Call Proc.ReplaceItemValue("ParserFieldArea",varPhone(1)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",varPhone(2)) |
| If Right(Proc.ParserFieldLine(0),1) = "0" Then |
| Call Proc.ReplaceItemValue("ParserFieldExtension",Right(Proc.ParserFieldLine(0),1)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",Left(Proc.ParserFieldLine(0),Len(Proc.ParserFieldLine(0))-1)) |
| End If |
| |
| Elseif Ubound(varPhone) = 3 Then |
| |
| Call Proc.ReplaceItemValue("ParserFieldCountry",varPhone(0)) |
| Call Proc.ReplaceItemValue("ParserFieldArea",varPhone(1)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",varPhone(2)) |
| Call Proc.ReplaceItemValue("ParserFieldExtension",varPhone(3)) |
| |
| |
| Elseif Ubound(varPhone) = 4 Then |
| |
| Call Proc.ReplaceItemValue("ParserFieldCountry",varPhone(0)) |
| Call Proc.ReplaceItemValue("ParserFieldArea",varPhone(1)+ varPhone(2)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",varPhone(3)) |
| Call Proc.ReplaceItemValue("ParserFieldExtension",varPhone(4)) |
| |
| |
| Elseif Ubound(varPhone) = 5 Then |
| |
| Call Proc.ReplaceItemValue("ParserFieldCountry",varPhone(0)) |
| Call Proc.ReplaceItemValue("ParserFieldArea",varPhone(1) + varPhone(2)) |
| Call Proc.ReplaceItemValue("ParserFieldLine",varPhone(3) + varPhone(4)) |
| Call Proc.ReplaceItemValue("ParserFieldExtension",varPhone(5)) |
| |
| |
| End If |
| End If |
| |
| |
| |
| |
| |
| strCheckArea = Proc.ParserFieldArea(0) |
| strCheckLine = Proc.parserFieldLine(0) |
| |
| If Len(strCheckArea) > 4 Then |
| strCheckNewArea = Left(strCheckArea,4) |
| strCheckNewLine = Right(strCheckArea,(Len(strCheckArea)-Len(strCheckNewArea))) +strCheckLine |
| |
| If Left(strCheckNewLine,1) = "0" Then |
| strCheckNewLine = Right(strCheckNewArea,1) + strCheckNewLine |
| strCheckNewArea = Left(strCheckNewArea,Len(strCheckNewArea)-1) |
| If Left(strCheckNewLine,1) = "0" Then |
| strCheckNewLine = Right(strCheckNewArea,1) + strCheckNewLine |
| strCheckNewArea = Left(strCheckNewArea,Len(strCheckNewArea)-1) |
| If Left(strCheckNewLine,1) = "0" Then |
| strCheckNewLine = Right(strCheckNewArea,1) + strCheckNewLine |
| strCheckNewArea = Left(strCheckNewArea,Len(strCheckNewArea)-1) |
| If Left(strCheckNewLine,1) = "0" Then |
| strCheckNewLine = Right(strCheckNewArea,1) + strCheckNewLine |
| strCheckNewArea = Left(strCheckNewArea,Len(strCheckNewArea)-1) |
| End If |
| End If |
| End If |
| End If |
| |
| Proc.ParserFieldArea = strCheckNewArea |
| Proc.ParserFieldLine = strCheckNewLine |
| |
| End If |
| |
| |
| PhoneNumber = Proc.ParserFieldCountry(0) + " " +Proc.ParserFieldArea(0) + " / "+ Proc.ParserFieldLine(0) + " - " +Proc.ParserFieldExtension(0) |
| Call Proc.Replaceitemvalue("ParserFieldComplete", PhoneNumber) |
| End Sub |