Lundi 20 Février 2017  
Navigation
FAQ Outlook
» Foire Aux Questions «
Recherche
Téléchargements
Forums Outlook
Plan du site
Liens
Login

Les inscriptions sont fermées

Pseudo

Mot de passe

Se souvenir de moi



Mot de passe oublié ? Mot de passe oublié ?
Connexions
Bienvenue à [FAMACLUB]
le 1,414ème membre
Visiteurs en ligne : 3
Membres en ligne : 0

 Alphator 4 semaines
 ande 10 semaines
 Oliv 12 semaines
 cubitus 15 semaines
 callaghi 19 semaines
 JièL 20 semaines
 angel 25 semaines
 Quartzkyte 34 semaines
 grouilau 34 semaines
 miguy973 43 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:4 966
En ligne :3
Max. en ligne:312
Max. / jour:66 529
Total hier:5 544
Total ce mois:84 113
Total visites:16 981 732
Moyenne/jour:5 619

Dernières 24h

























Publicité ; elle permet de financer le site
Navigation parmi les catégories/articles
« Catégorie     Q15000 Macros - VBA (41)  Catégorie »
« Article ( « Catégorie)  Article »  [>>]
R15000 [VBA] TUTORIEL OULOOK VBA
Voici un petit tutoriel sur la programmation d'Outlook.
Si vous avez déjà programmé en VBA EXCEL ou WORD la base est la même, seuls les objets changent et il n'y a pas d'enregistreur de macro (jusqu'à OL2003)

Vous devez dans un premier temps dans Outils/macro/sécurité Cochez Niveau Moyen. voir l'article http://faq.outlook.fr/readarticle.php?article_id=215 pour éviter de confirmer l'activation des macros.

Puis ouvrir l'éditeur VBE  en tapant ALT+F11.

Réservez l'emplacement ThisOutlookSession pour les macros événementielles (qui se lancent lors de l'envoi, la réception etc...).

Insérez Un module par le menu Insertion puis copiez dans ce module la macro suivante :
 sub AvecCeMail()
 
Set CeMail= ActiveInspector.CurrentItem
msgbox CeMail.subject
end sub


Cette macro permet de travailler avec l'ITEM actif c'est-à-dire ouvert, cela peut être un mail, une tâche, un rdv,...

Les éléments Outlook sont les suivants :

AppointmentItem
ContactItem
DistListItem
DocumentItem
JournalItem
MailItem
MeetingItem
NoteItem
PostItem
RemoteItem
ReportItem
TaskItem
TaskRequestAcceptItem
TaskRequestDeclineItem
TaskRequestItem
TaskRequestUpdateItem


Ici on partira d'un mail.

Comment cela s'appelle t'il ?  :
Pour savoir comment s'appelle telle ou telle propriété utilisez le débogage.
 
En face de "Msgbox " cliquez bouton droit puis /Basculer/Point d'arrêt ou F9 (ctrl+maj+F9 pour les enlever)

Lancez la macro par F5 ou avec le menu débogage

en regardant dans "la fenêtre variable locale" (menu affichage de VBE) vous pouvez avoir les propriétés de cet objet en cliquant sur le + en face de Cemail.

Vous voyez par exemple que Cemail a une propriété Attachments qui représente toutes les pièces jointes du mail.
Vous pouvez ajouter une ligne à votre code :

MsgBox "ce mail comporte " & CeMail.Attachments.Count & " pièce(s) jointe(s)."

Vous voyez aussi qu'il a une propriété BodyFormat qui indique si c'est mail en TEXTE BRUT (olFormatPlain) HTML (olFormatHTML) ou RTF (olFormatRichText).
ajoutez à ce votre macro :
 
If CeMail.BodyFormat =olFormatHTML then
msgbox Cemail.HTMLbody
else
msgbox CeMail.body
End if

Nous avons ici mis une clause  SI (IF) c'est un mail en HTML j'affiche le corps du mail HTML sinon le corps normal.

Pour en savoir plus sur une méthode, une propriété, un événement,... tapez le dans VBE et/ou sélectionnez le et appuyez sur F1, l'aide va s'ouvrir vous donnant le mode d'emploi et des exemples.

Sélectionnez IF puis F1 , MSGBOX puis F1 etc.

Un autre exemple avec les principaux objets :

Sub BaBA()
Dim App
Dim Insp
Dim Expl
Dim Oitem
    Set App = Outlook.Application 'désigne Outlook
    Debug.Print App
    Set Expl = App.ActiveExplorer 'désigne l'exploreur actif càd la fenêtre des dossiers.
    Debug.Print Expl.Caption
    Set Insp = ActiveInspector 'désigne la fenêtre de l'élement actif
    Debug.Print Insp.Caption
    Set Oitem = ActiveInspector.CurrentItem 'désigne l'élément actif càd le mail le contact ou rdv...
    Debug.Print Oitem
    Stop

End Sub



Allez plus loin :

Pour apprendre rien de tel que de modifier du code déjà existant. répérez un code voisin de ce que vous voulez faire et modifiez selon vos besoins.

Cherchez avec google des mots clefs comme "sub" + "mailitem"  etc... ils vous aiguilleront sur du code existant.

Liens utiles :
En anglais



  • http://www.outlookcode.com/article.aspx?id=40 ce site est la référence en matière de codes.
  • http://blogs.officezealot.com/legault/pages/20086.aspx une introduction au VBA outlook
  • Outlook Redemption  une bibliothèque d'objets qui fait ce que le vba Outlook ne fait pas.
  • http://www.slovaktech.com/code_samples.htm des exemples
  • Slipstick

  • Fin provisoire.


    Publié par Oliv le mardi 24 juillet 2007 13:53 0 Commentaires 23532 Lecture(s) Imprimer
    Commentaires
    les commentaires sont fermés.
    Copyright et partage
    Ce site est sous licence Creative Commons.
    Vous pouvez utiliser toutes les informations présentent ici, mais il vous est interdit de les reproduire sans citer la source.

    Creative Commons License
    OUI au partage
    NON au « copillage »

    Ajouter aux favoris / partager : 
    URL :
    BBcode :
    HTML :
    Cliquez ci dessus sur le lien que vous voulez copier et [Ctrl] + [C] ou cliquez sur le bouton [ C ]
    Articles similaires
    Articles Catégories
    R15045 [VBA] Ouvrir l'arborescence des pst contenant une boîte de réception Q15000 Macros - VBA
    R15930 [VBA] Création de menu dans outlook Q15000 Macros - VBA
    R15380 [VBA] Envoi via VBA : suppression de la confirmation d'envoi Q15000 Macros - VBA
    R15280 [VBA] Exporter un mail et l'ouvrir dans IE avec ses images Q15000 Macros - VBA
    R15930 [VBA] Eliminer les doublons Q15000 Macros - VBA
    Nuage de tags
    R12070 Gérer les réponses à la demande de réunion, R08240 Pourquoi la désinstallation/Réinstallation ne fait rien ?!, R15400 [VBA] Changer les parametres POP des COMPTES, R99060 Solution RA-DI-CA-LE !, R07020 Choisir un profil au démarrage d'Outlook, R01210 Répondeur automatique pendant votre absence, R09040 Supprimer un des noms erronés de la suggestion d'adresses (saisie auto ou saisie semi auto), R12050 Définir un rendez-vous répétitif, R00090 Noms des serveurs POP, IMAP, SMTP et Webmail des principaux FAI, R20030 Configurer un compte Hotmail (Windows Live Hotmail) pour Outlook 2002/2003, R99110 Ebook pas cher, R02060 Vérifier l'accès au serveur SMTP, R09080 Ajouter un dossier contact et l'afficher dans le carnet d'adresses, R03030 Mettre une image de fond dans un message, R12030 Créer un rendez-vous rapidement

    aucun Crack, CrackZ, no-CD, DownloadZ, TelechargementZ, Serial, Numéro de série, N0 de série, Serialz ni Keygen pour Outlook sur ce site.

    Blague aléatoire
    Publicité
    Météo Marseille
    [/\] Copyright JièL / Jean-Louis Goubert © 2003-2009 [/\]