New Exchange, Migrated w/ ExMerge - what gives? :-)

W

William

Greetings;

I just moved a whole office of people to a new Exchange Server via ExMerge:
http://support.microsoft.com/default.aspx?scid=kb;en-us;174197&sd=tech

Now; Word - Tools - Letters and Mailings - Envelopes & Labels
does not show anything but the top line of the address until I
go back and edit a contact record that looks just perfect.

Is there a way to touch every contact record?
Or, did I miss something in the migration??

Looking forward to your reply, because,
one of my folks has over 2,000 contacts!

William Arnold ~ Indianapolis, IN
 
P

Peter Jamieson

I haven't come across this particular problem, and you might get more info.
in an Outlook group, but...
Is there a way to touch every contact record?

A user ought to be able to modify all of their own contacts with a bit of
Outlook (or Word) VBA. Depending on how many people you have to update, that
might or might not be a manageable solution. Again, you might be better off
asking how to do this in an Outlook group as they probably know more about
the pitfalls, but the following code worked in a simple case here where all
the contacts are in the default contacts folder (that isn't necessarily the
case). In order to force an update, it adds and removes a user-defined
property to/from every contact - in principle you ought to check for the
name of the user defined field before trying to add it. To use it from the
Word VBA editor you need to use Tools|References to add the Microsoft ??
Outlook Object Library, where 11 is your Outlook version.

Sub touch_all_contact_records()

Dim oOutlookApp As Outlook.Application
Dim oContactFolder As Outlook.MAPIFolder
Dim oContactItem As Outlook.ContactItem
Dim oUserProperty As UserProperty
Dim oONS As Outlook.NameSpace

' If you are running this from Outlook, use this...
'Set oOutlookApp = Application
' Otherwise, use this...
Set oOutlookApp = CreateObject("Outlook.Application")
Set oONS = oOutlookApp.GetNamespace("MAPI")
Set oContactFolder = oONS.GetDefaultFolder(olFolderContacts)

' Add all the contact items in the default contacts folder to the list

For Each oContactItem In oContactFolder.Items
If Left(oContactItem.MessageClass, 11) = "IPM.Contact" Then
Set oUserProperty =
oContactItem.UserProperties.Add(Name:="u432765874635", Type:=olText,
addtofolderfields:=False)
oContactItem.Save
oUserProperty.Delete
Set oUserProperty = Nothing
oContactItem.Save
oContactItem.Close olSave
End If
Next

Set oContactFolder = Nothing
Set oONS = Nothing
Set oOutlookApp = Nothing

End Sub

Peter Jamieson
 
W

William

Thanks, Peter Jamieson - I can do that :)

Kindest Regards,

William Arnold ~ Indianapolis
 
W

William

Thanks to Peter Jamieson, et. al, I'm almost home! :)

I've discovered my problem is that ExMerge didn't migrate a crucial contact
flag: "This is the mailing address"

So, My problem now becomes how to most efficiently set this flag, and, if I
can recover what it really was.

Can anyone tell me what oContactItem property this is?

FYI, I've got XP outlook clients running on an Exchange 2000 server..

Hopefully Yours,

William in Indianapolis
 
P

Peter Jamieson

You probably need

oContactItem.SelectedMailingAddress = olBusiness

or one of the other values in the enumeration. However, I don't know how you
can recover the correct values if they have been lost.

Peter Jamieson
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top