Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Outlook > VBA Outlook

Réponse
 
Outils de la discussion
Vieux 18/08/2008, 13h32   #1 (permalink)
Futur Membre du Club
 
Date d'inscription: octobre 2003
Messages: 31
Par défaut Acceder aux contacts Exchange

Bonjour,

J'ai modifié un script, que j'avais trouvé sur le net à l'époque, qui me permet de modifier tel ou tel champ d'un contact selon un critère de recherche ou alors tout en même temps.

Par exemple, modifier le champ "Ville" de tous les contacts qui sont dans la société XYZ avec un simple bouton dans outlook.

Ca fonctionne bien mais je n'avais pas pensé à un petit détail, c'est que celui pour qui j'ai fait ca utilise Exchange et moi je vais chercher les contacts a modifier dans les contacts privés.

Je vous met ici mon code VBA. Si qqn aurait une solution ou une piste, ca me serait très très utile.
Code :
Sub ChangeContact()
Dim myolApp As Outlook.Application
Dim myNamespace As Outlook.NameSpace
Dim myContacts As Outlook.Items
Dim myItems As Outlook.Items
Dim myItem As Object
Dim Count As Integer
Dim rech As String
Dim rempl As String
 
rech = InputBox("Quel contact voulez-vous modifier ?" & Chr(13) & "(Recherche par : Société) " & Chr(13) & Chr(13) & "Laisser vide pour tout changer", "Remplacement dans les contacts")
If StrPtr(rech) = 0 Then Exit Sub
If rech = vbNullString Then
    If MsgBox("Etes-vous sur de vouloir modifier TOUT les contacts ?", vbYesNo) = vbNo Then Exit Sub
End If
 
rempl = InputBox("Nouvelle valeur ?", "Remplacement dans les contacts")
If rempl = "" Then Exit Sub
 
Set myolApp = Outlook.Application
Set myNamespace = myolApp.GetNamespace("MAPI" )
Set myContacts = myNamespace.GetDefaultFolder(olFolderContacts).Items
 
Count = 0
 
For Each myItem In myContacts
If (myItem.Class = olContact) Then
 
If rech = "" Then
    myItem.BusinessFaxNumber = rempl
    myItem.Save
    Count = Count + 1
ElseIf (myItem.CompanyName = rech) Then
    myItem.BusinessFaxNumber = rempl
    myItem.Save
    Count = Count + 1
End If
 
End If
Next
MsgBox "Remplacement effectué. " & Count & " contact(s) modifié(s)"
End Sub
Je précise que je suis plutot débutant en VBA. En gros c'est un des 1er code VBA que je touche.

Merci d'avance !

Dernière modification par Dolphy35 ; 18/08/2008 à 20h56 Motif: Balise Code (#) !
Ekik est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 29/08/2008, 16h00   #2 (permalink)
Membre éprouvé
 
Avatar de Oliv-
 
Date d'inscription: mars 2006
Localisation: Tourcoing
Âge: 37
Messages: 492
Par défaut

Salut,
Si ton compte par défaut est EXCHANGE ton code suffit.
Oliv- est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Outlook > VBA Outlook

 
Offres d' emploi informatique sur Lesjeudis.com


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide


Fuseau horaire GMT +1. Il est actuellement 19h37.


Publiez vos articles, tutoriels et cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter
Copyright 2000-2008 www.developpez.com - Legal informations