Samedi 22 Juillet 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 : 4
Membres en ligne : 0

 callaghi 1 semaine
 EMERGENCY 2 semaines
 JièL 3 semaines
 zorro71 7 semaines
 Alphator 26 semaines
 ande 31 semaines
 Oliv 33 semaines
 cubitus 37 semaines
 angel 47 semaines
 Quartzkyte 56 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:3 343
En ligne :4
Max. en ligne:312
Max. / jour:66 529
Total hier:4 761
Total ce mois:122 452
Total visites:17 941 091
Moyenne/jour:5 654

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 24038 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
    R16050 Importer d'un autre PC les courriels d'Outlook Express vers Outlook sous Vista, R00090 Noms des serveurs POP, IMAP, SMTP et Webmail des principaux FAI, R99160 Le mot de passe, R09080 Ajouter un dossier contact et l'afficher dans le carnet d'adresses, R00010 Outlook ou Outlook Express ?, R14020 Recherche avancée, R99090 Vous prenez l'avion ?, R07020 Choisir un profil au démarrage d'Outlook, R12100 Partager son calendrier, R10060 Sauvegarder le carnet d'adresses personnel (.PAB), R15210 [VBA] Déplacer le contenu d'un dossier vers un pst., R10010 Sauvegarder TOUT Office 2003, R04070 Rendre visible le dossier temporaire des pièces jointes, R09110 Partager le carnet d'adresse d'Outlook 2000 avec Outlook Express 5, R99210 Y'a pas que les ordis qui rament

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