Outlook Banter

Outlook Banter (http://www.outlookbanter.com/)
-   Outlook and VBA (http://www.outlookbanter.com/outlook-vba/)
-   -   displaying international format phone numbers (http://www.outlookbanter.com/outlook-vba/24510-displaying-international-format-phone-numbers.html)

stef August 21st 06 12:22 AM

displaying international format phone numbers
 
OL 2002 SP3
Win XP HE

Follow-up to: microsoft.public.outlook.contacts

Hi,
I have a folder with hundreds of contacts.
All telephone numbers display as +12129999999
I would like to have them all display as +1 (212) 999-9999
It does automatically change to that if I manually open the contact and
click on the little pencil icon to the right of the phone number field.
However, I can't really do this manually for hundred's of contacts.
How can I automate this?
Thanks a lot.

Eric Legault [MVP - Outlook] August 21st 06 07:23 PM

displaying international format phone numbers
 
Try the Format function. In your case, it might look like this:

strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"stef" wrote:

OL 2002 SP3
Win XP HE

Follow-up to: microsoft.public.outlook.contacts

Hi,
I have a folder with hundreds of contacts.
All telephone numbers display as +12129999999
I would like to have them all display as +1 (212) 999-9999
It does automatically change to that if I manually open the contact and
click on the little pencil icon to the right of the phone number field.
However, I can't really do this manually for hundred's of contacts.
How can I automate this?
Thanks a lot.


stef August 21st 06 08:37 PM

displaying international format phone numbers
 
Eric Legault [MVP - Outlook] wrote:
Try the Format function. In your case, it might look like this:

strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX

Eric,
that's sounds good. thanks.
however, i only need to run this in ONE Contacts subfolder called ABC
(for example).
how do I run the code on that folder only?

Eric Legault [MVP - Outlook] August 21st 06 09:20 PM

displaying international format phone numbers
 
You can use the ActiveExplorer object to work with the selection in the
currently displayed folder and base your code on that:

If ActiveExplorer.Selection.count = 0 Then Exit Sub

For Each objC In ActiveExplorer.Selection
objC.BusinessTelephoneNumber = your code here
Next

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"stef" wrote:

Eric Legault [MVP - Outlook] wrote:
Try the Format function. In your case, it might look like this:

strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX

Eric,
that's sounds good. thanks.
however, i only need to run this in ONE Contacts subfolder called ABC
(for example).
how do I run the code on that folder only?


stef August 21st 06 09:30 PM

displaying international format phone numbers
 
Eric Legault [MVP - Outlook] wrote:
You can use the ActiveExplorer object to work with the selection in the
currently displayed folder and base your code on that:

If ActiveExplorer.Selection.count = 0 Then Exit Sub

For Each objC In ActiveExplorer.Selection
objC.BusinessTelephoneNumber = your code here
Next


Sorry Eric, I'm not experienced with VB.

is this how the whole macro would read?

"Sub ChangeTelFormat

strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")

If ActiveExplorer.Selection.count = 0 Then Exit Sub

For Each objC In ActiveExplorer.Selection
objC.BusinessTelephoneNumber = strX

Next
End Sub"


Eric Legault [MVP - Outlook] August 21st 06 11:24 PM

displaying international format phone numbers
 
Yes, but you'd also of course need to declare the variables:

Dim objC As Outlook.ContactItem
Dim strX As String

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"stef" wrote:

Eric Legault [MVP - Outlook] wrote:
You can use the ActiveExplorer object to work with the selection in the
currently displayed folder and base your code on that:

If ActiveExplorer.Selection.count = 0 Then Exit Sub

For Each objC In ActiveExplorer.Selection
objC.BusinessTelephoneNumber = your code here
Next


Sorry Eric, I'm not experienced with VB.

is this how the whole macro would read?

"Sub ChangeTelFormat

strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")

If ActiveExplorer.Selection.count = 0 Then Exit Sub

For Each objC In ActiveExplorer.Selection
objC.BusinessTelephoneNumber = strX

Next
End Sub"



stef August 22nd 06 12:46 AM

displaying international format phone numbers
 
Eric Legault [MVP - Outlook] wrote:
Yes, but you'd also of course need to declare the variables:

Dim objC As Outlook.ContactItem
Dim strX As String

Eric,
i must be doing something wrong as i'm getting an error message....
is there anyway i can get u to just spell it out for me out here, from
beginning to end?
that wd be most helpful.

Eric Legault [MVP - Outlook] August 22nd 06 06:24 AM

displaying international format phone numbers
 
Try this, but make sure to set a breakpoint on the Save line and do not
proceed with saving until you've verified that this Format function is
changing the phone number as you'd expect. If ANY phone numbers don't meet
the expected +########### format, they get all messed up.

Sub ChangeTelFormat()
Dim objC As Outlook.ContactItem
Dim strX As String

If ActiveExplorer.Selection.Count = 0 Then Exit Sub
If ActiveExplorer.CurrentFolder.DefaultItemType olContactItem Then
Exit Sub

For Each objC In ActiveExplorer.Selection
strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX
objC.Save
Next

Set objC = Nothing
End Sub

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"stef" wrote:

Eric Legault [MVP - Outlook] wrote:
Yes, but you'd also of course need to declare the variables:

Dim objC As Outlook.ContactItem
Dim strX As String

Eric,
i must be doing something wrong as i'm getting an error message....
is there anyway i can get u to just spell it out for me out here, from
beginning to end?
that wd be most helpful.


stef August 22nd 06 07:04 AM

displaying international format phone numbers
 
Eric Legault [MVP - Outlook] wrote:
Try this, but make sure to set a breakpoint on the Save line and do not
proceed with saving until you've verified that this Format function is
changing the phone number as you'd expect. If ANY phone numbers don't meet
the expected +########### format, they get all messed up.

Sub ChangeTelFormat()
Dim objC As Outlook.ContactItem
Dim strX As String

If ActiveExplorer.Selection.Count = 0 Then Exit Sub
If ActiveExplorer.CurrentFolder.DefaultItemType olContactItem Then
Exit Sub

For Each objC In ActiveExplorer.Selection
strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX
objC.Save
Next

Set objC = Nothing
End Sub


I changed the strx format as "+@ (@@@) @@@-@@@@" as the +1 is already
part of the number I have: +18008888888

I added an "End If" at the end, and checked it w/debugger and ran it but
no changes at all in folder "test". nothing bad, nothing good. just
nothing....

i checked the telephone format and it's all good there but....

by the way, these contact numbers are in the Test folder from copying
them from another folder into which i imported the numbers from a phone
with XTDN. dt know if it makes a difference as far as OL reading them
properly or not.

Here is what i ran:

Sub ChangeTelFormat()
Dim objC As Outlook.ContactItem
Dim strX As String

If ActiveExplorer.Selection.Count = 0 Then Exit Sub
If ActiveExplorer.CurrentFolder.DefaultItemType olContactItem Then
Exit Sub

For Each objC In ActiveExplorer.Selection
strX = Format(objC.BusinessTelephoneNumber, "+@ (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX
objC.Save
Next

Set objC = Nothing
End If

End Sub

Eric Legault [MVP - Outlook] August 22nd 06 03:24 PM

displaying international format phone numbers
 
The best I can recommend at this point is to step through your code line by
line and verify the values of the variables and the properties of your
Contacts. You'll have to do some hard sleuthing and deducing to pinpoint the
problem.

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"stef" wrote:

Eric Legault [MVP - Outlook] wrote:
Try this, but make sure to set a breakpoint on the Save line and do not
proceed with saving until you've verified that this Format function is
changing the phone number as you'd expect. If ANY phone numbers don't meet
the expected +########### format, they get all messed up.

Sub ChangeTelFormat()
Dim objC As Outlook.ContactItem
Dim strX As String

If ActiveExplorer.Selection.Count = 0 Then Exit Sub
If ActiveExplorer.CurrentFolder.DefaultItemType olContactItem Then
Exit Sub

For Each objC In ActiveExplorer.Selection
strX = Format(objC.BusinessTelephoneNumber, "+1 (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX
objC.Save
Next

Set objC = Nothing
End Sub


I changed the strx format as "+@ (@@@) @@@-@@@@" as the +1 is already
part of the number I have: +18008888888

I added an "End If" at the end, and checked it w/debugger and ran it but
no changes at all in folder "test". nothing bad, nothing good. just
nothing....

i checked the telephone format and it's all good there but....

by the way, these contact numbers are in the Test folder from copying
them from another folder into which i imported the numbers from a phone
with XTDN. dt know if it makes a difference as far as OL reading them
properly or not.

Here is what i ran:

Sub ChangeTelFormat()
Dim objC As Outlook.ContactItem
Dim strX As String

If ActiveExplorer.Selection.Count = 0 Then Exit Sub
If ActiveExplorer.CurrentFolder.DefaultItemType olContactItem Then
Exit Sub

For Each objC In ActiveExplorer.Selection
strX = Format(objC.BusinessTelephoneNumber, "+@ (@@@) @@@-@@@@")
objC.BusinessTelephoneNumber = strX
objC.Save
Next

Set objC = Nothing
End If

End Sub



All times are GMT +1. The time now is 01:35 PM.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2006 OutlookBanter.com