Mercredi 20 Février 2019  
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

 jcgdisle 13 semaines
 EMERGENCY 33 semaines
 beaulieu 45 semaines
 callaghi 49 semaines
 Charlie76 54 semaines
 joscopp 65 semaines
 JièL 65 semaines
 julbast 66 semaines
 pirobert 66 semaines
 zorro71 90 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:490
En ligne :3
Max. en ligne:312
Max. / jour:66 529
Total hier:4 083
Total ce mois:105 570
Total visites:21 198 748
Moyenne/jour:5 651

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 25718 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
    R12060 Répondre à une invitation, R08140 Interface non enregistrée ou interface non prise en charge, R08180 Les boutons d'acceptation ou de refus de RDV sont inactif, R99090 Vous prenez l'avion ?, R03050 Définir le papier à lettres par défaut, R01100 Lire un message sans envoyer la confirmation de lecture, R12120 Synchroniser Google Calendar avec Outlook 2010, R00040 Interdire la modification des comptes de messagerie et de carnet d'adresses, R99160 Le mot de passe, R06025 Limiter la taille maximum du .PST, R00020 Mettre Outlook 2002 (et autres) dans le systray, R08080 Message d'erreur lors de l'utilisation du carnet d'adresses, R99110 Ebook pas cher, R09130 Rechercher dans le carnet d'adresses, R15340 [VBA] Obliger la saisie d'un sujet

    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 [/\]