Trouver une note dans outlook [Résolu]

Signaler
Messages postés
159
Date d'inscription
jeudi 7 septembre 2006
Statut
Membre
Dernière intervention
30 septembre 2011
-
Messages postés
159
Date d'inscription
jeudi 7 septembre 2006
Statut
Membre
Dernière intervention
30 septembre 2011
-
Bonjour,

Je cherche à trouver une note dans outlook afin de la supprimer (avant de la recréer) pour éviter les doublons.

La création de la note ne pose aucun problème.
Je suis dans excel.

Je cherche à identifier une note pour la supprimer.

Voici mon code (pour le moment j'essaye de l'afficher ensuite je mettrai "delete" à la place de "display":
 Sub DeleteNote()
Dim myolApp As Outlook.Application
Dim myNamespace As Outlook.Namespace
Dim myTasks As Outlook.MAPIFolder
Dim myFolder As Outlook.MAPIFolder
Dim oItemNote As Outlook.NoteItem
Set myolApp = CreateObject("Outlook.Application")
Set myNamespace = myolApp.GetNamespace("MAPI")
Set myTasks = myNamespace.GetDefaultFolder(olFolderNotes)

    For Each oItemNote In myTasks
        oItemNote.Display
    Next

 End Sub


J'ai une erreur 438 à cette ligne:
For Each oItemNote In myTasks

Pouvez-vous m'aider?
Merci!

3 réponses

Messages postés
60
Date d'inscription
vendredi 14 novembre 2003
Statut
Membre
Dernière intervention
6 septembre 2012
2
Bonjour,
chez moi pour que ça fonctionne, il faut ajouter myTasks.Items
Par contre, bizarement ça ne supprime pas toutes les notes
Il faut que je les stocke dans un tableau puis que je supprime toutes les notes contenues dans ce tableau
Messages postés
159
Date d'inscription
jeudi 7 septembre 2006
Statut
Membre
Dernière intervention
30 septembre 2011

Bonjour Fohaf,

Merci en effet avec Items je peux afficher toutes les notes.

Maintenant comment en identifier une en particulier afin de la supprimer?

Merci!
Messages postés
159
Date d'inscription
jeudi 7 septembre 2006
Statut
Membre
Dernière intervention
30 septembre 2011

J'ai trouvé une solution en utilisant
 Sub DeleteNote()
Dim myolApp As Outlook.Application
Dim myNamespace As Outlook.Namespace
Dim myTasks As Outlook.MAPIFolder
Dim oItemNote As Outlook.NoteItem
Set myolApp = CreateObject("Outlook.Application")
Set myNamespace = myolApp.GetNamespace("MAPI")
Set myTasks = myNamespace.GetDefaultFolder(olFolderNotes)

    For Each oItemNote In myTasks.Items
        If oItemNote.Subject = "Le sujet de ma note" Then
        oItemNote.Delete
        End If
    Next

 End Sub