[AccessD] OT: Microsoft outlook

Kevin Waddle thewaddles at sbcglobal.net
Sun Aug 31 19:31:32 CDT 2003


Gershon,
The Code below is one function and two subs
The Function FileExist and the Sub SetOutlookReference are used to
determine the version of Outlook being used and if there is a reference
set to Outlook.  It will set the reference if it does not exist.
Both of these are called from within the Sub ChangeOutLook()

The ChangeOutlook Sub will ask you for a number that will be appended to
the beginning of each phone number in your contacts.  It will only
append the number if there is already a number in the field.
You will need to change one line in the ChangeOutlook sub to match the
Personal Folder Name that contains your Contacts.
Hope this helps,
Kevin

'*** Code Start ***
Option Explicit

' Check if file exists
Function FileExist(pstrFileName As String) As Boolean

    Dim intAttr As Integer

    On Error Resume Next
    intAttr = vbDirectory
    intAttr = GetAttr(pstrFileName)
    FileExist = (intAttr And vbDirectory) <> vbDirectory

End Function
Sub SetOutLookReference()

    Dim varmessage As Variant

    On Error GoTo errHandler

    If FileExist(Application.Path & "\MSOUTL8.olb") = True Then
        Application.VBE.ActiveVBProject.References.AddFromFile _
            Application.Path & "\MSOUTL8.olb"
    ElseIf FileExist(Application.Path & "\MSOUTL9.OLB") = True Then
        Application.VBE.ActiveVBProject.References.AddFromFile _
            Application.Path & "\MSOUTL9.olb"
    ElseIf FileExist(Application.Path & "\MSOUTL.OLB") = True Then
        Application.VBE.ActiveVBProject.References.AddFromFile _
            Application.Path & "\MSOUTL.olb"
    End If

    Exit Sub

errHandler:
    Select Case Err.Number
        Case 32813
            'MsgBox "Reference already exists"
            Exit Sub
        Case Else
            varmessage = MsgBox("An error occured while setting up this
file." & Chr(13) & _
            "Please report the error:" & Chr(13) & Err.Number & Chr(13)
& "and error description:" & Chr(13) & _
            Err.Description & Chr(13) & "to the following Mailbox: " &
Chr(13) & _
                        "mailboxemail at yourdomain.com", vbOKOnly,
ThisWorkbook.BuiltinDocumentProperties("title"))
                        '& " Setup Error."))
            Exit Sub
    
End Select
End Sub

Sub ChangeOutLook()

'Determine if there is a reference set to Outlook...If not, add it
Call SetOutLookReference

Dim i
Dim MyNum
Dim ol As New Outlook.Application
Dim olns As Outlook.NameSpace
Dim fldContacts As Outlook.MAPIFolder
Dim itms As Outlook.Items
Dim cf As Object
Dim MyItem As ContactItem
Dim MyOldValue
Set ol = CreateObject("Outlook.Application")
Set olns = ol.GetNamespace("MAPI")

' Which folder is the contacts list in?
'Change this line to match your Contact Folder Name...
Set fldContacts = olns.Folders("Personal Folders").Folders("Contacts")
Set itms = fldContacts.Items

'What number to you want to add to the beginning of your Phone Number?
MyNum = InputBox("Enter the number to add to the beginning of your phone
number", _
"Add digit to your phone number...")

For i = 1 To itms.Count
    Set MyItem = itms(i)
    If Len(MyItem.BusinessTelephoneNumber) <> 0 Then
        MyItem.BusinessTelephoneNumber = MyNum &
MyItem.BusinessTelephoneNumber
    End If
    If Len(MyItem.AssistantTelephoneNumber) <> 0 Then
        MyItem.AssistantTelephoneNumber = MyNum &
MyItem.AssistantTelephoneNumber
    End If
    If Len(MyItem.Business2TelephoneNumber) <> 0 Then
        MyItem.Business2TelephoneNumber = MyNum &
MyItem.Business2TelephoneNumber
    End If
    If Len(MyItem.BusinessFaxNumber) <> 0 Then
        MyItem.BusinessFaxNumber = MyNum & MyItem.BusinessFaxNumber
    End If
    If Len(MyItem.CallbackTelephoneNumber) <> 0 Then
        MyItem.CallbackTelephoneNumber = MyNum &
MyItem.CallbackTelephoneNumber
    End If
    If Len(MyItem.CarTelephoneNumber) <> 0 Then
        MyItem.CarTelephoneNumber = MyNum & MyItem.CarTelephoneNumber
    End If
    If Len(MyItem.CompanyMainTelephoneNumber) <> 0 Then
        MyItem.CompanyMainTelephoneNumber = MyNum &
MyItem.CompanyMainTelephoneNumber
    End If
    If Len(MyItem.Home2TelephoneNumber) <> 0 Then
        MyItem.Home2TelephoneNumber = MyNum &
MyItem.Home2TelephoneNumber
    End If
    If Len(MyItem.HomeFaxNumber) <> 0 Then
        MyItem.HomeFaxNumber = MyNum & MyItem.HomeFaxNumber
    End If
    If Len(MyItem.HomeTelephoneNumber) <> 0 Then
        MyItem.HomeTelephoneNumber = MyNum & MyItem.HomeTelephoneNumber
    End If
    If Len(MyItem.MobileTelephoneNumber) <> 0 Then
        MyItem.MobileTelephoneNumber = MyNum &
MyItem.MobileTelephoneNumber
    End If
    If Len(MyItem.OtherFaxNumber) <> 0 Then
        MyItem.OtherFaxNumber = MyNum & MyItem.OtherFaxNumber
    End If
    If Len(MyItem.OtherTelephoneNumber) <> 0 Then
        MyItem.OtherTelephoneNumber = MyNum &
MyItem.OtherTelephoneNumber
    End If
    If Len(MyItem.PagerNumber) <> 0 Then
        MyItem.PagerNumber = MyNum & MyItem.PagerNumber
    End If
    If Len(MyItem.PrimaryTelephoneNumber) <> 0 Then
        MyItem.PrimaryTelephoneNumber = MyNum &
MyItem.PrimaryTelephoneNumber
    End If
    If Len(MyItem.RadioTelephoneNumber) <> 0 Then
        MyItem.RadioTelephoneNumber = MyNum &
MyItem.RadioTelephoneNumber
    End If
    If Len(MyItem.TelexNumber) <> 0 Then
        MyItem.TelexNumber = MyNum & MyItem.TelexNumber
    End If
    If Len(MyItem.TTYTDDTelephoneNumber) <> 0 Then
        MyItem.TTYTDDTelephoneNumber = MyNum &
MyItem.TTYTDDTelephoneNumber
    End If
        itms(i).Save
        
Next i

End Sub
'*** Code End ***

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of
handyman at actcom.co.il
Sent: Saturday, August 30, 2003 10:24 PM
To: accessd at databaseadvisors.com
Subject: [AccessD] OT: Microsoft outlook


Sorry for the OT.  I need to make a global change to all phone numbers
in 
the Microsoft Outlook contacts, as new digit is being added to the phone

numbers.  Does anyone know how I can do this?  There are thousands of 
entries, and the thought of doing it by hand is nerve-racking.  I guess 
after this I'll have to worry about the information on a Palm....

Thanks

Gershon Markowitz
mailto:Handyman at actcom.co.il

_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list