Problème Incompatibilité de Type boucle For

Bonjour j'ai un problème d'incompatibilité de type. La macro tourne mais à un moment donné quand il passe au prochain email avec la boucle for il plante en indiquant un problème d'incompatibilité de type. C'est une macro qui range les emails catégorisés automatiquement.

Voici le code :

Sub Rangement_Emails_Categorises_Dans_Dossiers_Respectifs()

Dim myOIApp As Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myFolderDestination As Outlook.MAPIFolder
Dim myItem As Outlook.Items
Dim myItems As Outlook.MailItem
Dim Nom_Boite_Email As Recipient
Dim Mon_Namespace As Outlook.NameSpace

Dim Categorie_Email As Category
Dim Temps_Presence_Email, Temps_Seuil_Rangement As Double

Set myOlApp = CreateObject("Outlook.Application")
'Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set Mon_Namespace = Application.GetNamespace("MAPI")

'Répertoire "Inbox"
'Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
Set Nom_Boite_Email = Mon_Namespace.CreateRecipient("Adresse_email")
Set myFolder = Application.Session.GetSharedDefaultFolder(Nom_Boite_Email, olFolderInbox)

For Each myItems In myFolder.Items

Temps_Presence_Email = CDbl(Now - myItems.ReceivedTime)
Temps_Seuil_Rangement = 5
'MsgBox (myItems.Subject)
'MsgBox (myItems.Categories)

If (myItems.UnRead = False) And (myItems.Categories <> "") Then

'Rangement des emails catégorisés "AZQORE" dans le dossier "Boîte de Réception/AZQORE"
If (myItems.UnRead = False) And (myItems.Categories = "AZQORE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
Set myFolderDestination = myFolder.Folders("AZQORE")
myItems.Move myFolderDestination

'Rangement des emails catégorisés "BHF E96I" dans le dossier "Boîte de Réception/PAYS/BHF BANK Frankfurt E96I"
ElseIf (myItems.UnRead = False) And (myItems.Categories = "BHF E96I") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
Set myFolderDestination = myFolder.Folders("PAYS").Folders("BHF BANK Frankfurt E96I")
myItems.Move myFolderDestination

'Rangement des emails catégorisés "BULGARIE" dans le dossier "Boîte de Réception/PAYS/BULGARIE"
ElseIf (myItems.UnRead = False) And (myItems.Categories = "BULGARIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
Set myFolderDestination = myFolder.Folders("PAYS").Folders("BULGARIE")
myItems.Move myFolderDestination

'Rangement des emails catégorisés "CROATIE" dans le dossier "Boîte de Réception/PAYS/CROATIE"
ElseIf (myItems.UnRead = False) And (myItems.Categories = "CROATIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
Set myFolderDestination = myFolder.Folders("PAYS").Folders("CROATIE")
myItems.Move myFolderDestination

'Rangement des emails catégorisés "DANEMARK" dans le dossier "Boîte de Réception/PAYS/DANEMARK"
ElseIf (myItems.UnRead = False) And (myItems.Categories = "DANEMARK") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
Set myFolderDestination = myFolder.Folders("PAYS").Folders("DANEMARK")
myItems.Move myFolderDestination

End If

' ElseIf (myItems.UnRead = False) And (myItems.Categories = "") Then
' ' NE RIEN FAIRE
' 'MsgBox (myItems.Categories)
'
ElseIf (myItems.UnRead = True) And (myItems.Categories <> "") Then
myItems.UnRead = True

ElseIf (myItems.UnRead = True) And (myItems.Categories = "") Then
myItems.UnRead = True

End If

Next myItems

MsgBox ("OK")

End Sub

Edit modo : merci de mettre le code entre balises avec le bouton </>

Merci pour vos réponses !

Bonjour Yoelto et

Merci de mettre le code entre balise la prochaine fois SVP, pour cela il faut utiliser le bouton </>

Sinon pour ce qui concerne le bug, il y a un mode débogage pour savoir quelle ligne plante et à quel moment

@+

Bonjour,

Je connais bien le bouton du debogage et je sais comment l'utiliser. J'ai pu voir que ça plante à la fin à "Next my Items" mais je ne sais pas pourquoi ?

Merc pour votre aide.

Bonjour Yoelto

Il y a déjà un problème de variables vous mettriez l'instruction

Option Explicit
image

En début de module, vous vous seriez aperçu que vous définissez la variable

Dim myOIApp As Outlook.Application

myOIApp avec un "i"

or, vous appelez ensuite

Set myOlApp = CreateObject("Outlook.Application")

myOlApp avec un "L"

Ensuite, vous semblez vouloir créer un nouveau destinataire dans votre boite mail

Set Nom_Boite_Email = Mon_Namespace.CreateRecipient("Adresse_email")

Pourquoi ?

@+

Sub Rangement_Emails_Categorises_Dans_Dossiers_Respectifs()

    Dim myOIApp As Outlook.Application
    'Dim myNameSpace As Outlook.NameSpace
    Dim myFolder As Outlook.MAPIFolder
    Dim myFolderDestination As Outlook.MAPIFolder
    Dim myItem As Outlook.Items
    Dim myItems As Outlook.MailItem

    Dim Nom_Boite_Email As Recipient
    Dim Mon_Namespace As Outlook.NameSpace

    Dim Temps_Presence_Email, Temps_Seuil_Rangement As Double

    Set myOIApp = CreateObject("Outlook.Application")
    'Set myNameSpace = myOlApp.GetNamespace("MAPI")
    Set Mon_Namespace = Application.GetNamespace("MAPI")

    'Répertoire "Inbox"
    'Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
    Set Nom_Boite_Email = Mon_Namespace.CreateRecipient("Adresse_Email")
    Set myFolder = Application.Session.GetSharedDefaultFolder(Nom_Boite_Email, olFolderInbox)

    For Each myItems In myFolder.Items

    Temps_Presence_Email = CDbl(Now - myItems.ReceivedTime)
    Temps_Seuil_Rangement = 5
    'MsgBox (myItems.Subject)
    'MsgBox (myItems.Categories)

    If (myItems.UnRead = False) And (myItems.Categories <> "") Then

        'Rangement des emails catégorisés "AZQORE" dans le dossier "Boîte de Réception/AZQORE"
        If (myItems.UnRead = False) And (myItems.Categories = "AZQORE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("AZQORE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "BHF E96I" dans le dossier "Boîte de Réception/PAYS/BHF BANK Frankfurt E96I"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "BHF E96I") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("BHF BANK Frankfurt E96I")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "BULGARIE" dans le dossier "Boîte de Réception/PAYS/BULGARIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "BULGARIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("BULGARIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "BUY IN" dans le dossier "Boîte de Réception/BUY IN"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "BUY IN") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("BUY IN")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "CA CIB" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/CA CIB"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CA CIB") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/CA CIB")
'            myItems.Move myFolderDestination
'
'        'Rangement des emails catégorisés "CA TITRES" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/CA TITRES"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CA TITRES") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/CA TITRES")
'            myItems.Move myFolderDestination
'
'        'Rangement des emails catégorisés "CACEIS NL EX KAS" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/CACEIS NL EX KAS"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CACEIS NL EX KAS") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/CACEIS NL EX KAS")
'            myItems.Move myFolderDestination
'
'        'Rangement des emails catégorisés "CHANGE" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/CHANGE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CHANGE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/CHANGE")
'            myItems.Move myFolderDestination
'
'        'Rangement des emails catégorisés "CONVERSION" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/CONVERSION"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CONVERSION") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/CONVERSION")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "CROATIE" dans le dossier "Boîte de Réception/PAYS/CROATIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "CROATIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("CROATIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "DANEMARK" dans le dossier "Boîte de Réception/PAYS/DANEMARK"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "DANEMARK") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("DANEMARK")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "EQUIPE" dans le dossier "Boîte de Réception/EQUIPE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "EQUIPE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("EQUIPE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "ESPAGNE" dans le dossier "Boîte de Réception/PAYS/ESPAGNE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "ESPAGNE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("ESPAGNE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "ESTONIE" dans le dossier "Boîte de Réception/PAYS/ESTONIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "ESTONIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("ESTONIE")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "FIDEURAM" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/FIDEURAM"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "FIDEURAM") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/FIDEURAM")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "FINLANDE" dans le dossier "Boîte de Réception/PAYS/FINLANDE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "FINLANDE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("FINLANDE")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "FLUX PHYSIQUE" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/FLUX PHYSIQUE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "FLUX PHYSIQUE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/FLUX PHYSIQUE")
'            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "GB E681" dans le dossier "Boîte de Réception/PAYS/GRANDE-BRETAGNE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "GB E681") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("PAYS").Folders("GRANDE-BRETAGNE")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "GRANDE-BRETAGNE" dans le dossier "Boîte de Réception/PAYS/GRANDE-BRETAGNE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "GRANDE-BRETAGNE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("GRANDE-BRETAGNE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "GRECE" dans le dossier "Boîte de Réception/PAYS/GRECE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "GRECE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("GRECE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "HONGRIE" dans le dossier "Boîte de Réception/PAYS/HONGRIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "HONGRIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("HONGRIE")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "INFO" dans le dossier "Boîte de Réception/INFO"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "INFO") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("INFO")
'            myItems.Move myFolderDestination

'         'Rangement des emails catégorisés "ISLAND" dans le dossier "Boîte de Réception/PAYS/ISLANDE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "ISLAND") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("PAYS").Folders("ISLANDE")
'            myItems.Move myFolderDestination

'         'Rangement des emails catégorisés "ITALIE" dans le dossier "DOSSIER A DEFINIR : Boîte de Réception/PAYS/ITALIE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "ITALIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("DOSSIER A DEFINIR : Boîte de Réception/PAYS/ITALIE")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "LETTONIE" dans le dossier "Boîte de Réception/PAYS/LETTONIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "lettonie") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("LETTONIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "LITHUANIE" dans le dossier "Boîte de Réception/PAYS/LITHUANIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "LITHUANIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("LITHUANIE")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "Non concerné" dans le dossier "Boîte de Réception/NON CONCERNE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "Non concerné") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("NON CONCERNE")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "NORVEGE" dans le dossier "Boîte de Réception/PAYS/NORVEGE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "NORVEGE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("NORVEGE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "OST" dans le dossier "Boîte de Réception/OST"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "OST") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("OST/CONVERSION")
            myItems.Move myFolderDestination

        ''Rangement des emails catégorisés "PAIR OFF" dans le dossier "Boîte de Réception/PAIR OFF"
        'ElseIf (myItems.UnRead = False) And (myItems.Categories = "PAIR OFF") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            'Set myFolderDestination = myFolder.Folders("PAIR OFF")
            'myItems.Move myFolderDestination

        'Rangement des emails catégorisés "POLOGNE" dans le dossier "Boîte de Réception/PAYS/POLOGNE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "POLOGNE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("POLOGNE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "PORTUGAL" dans le dossier "Boîte de Réception/PAYS/PORTUGAL"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "PORTUGAL") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("PORTUGAL")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "REPORTING" dans le dossier "Boîte de Réception/REPORTING"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "REPORTING") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("REPORTING")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "REPUBLIQUE TCHEQUE" dans le dossier "Boîte de Réception/PAYS/REPUBLIQUE TCHEQUE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "REPUBLIQUE TCHEQUE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("REPUBLIQUE TCHEQUE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "RUSSIE" dans le dossier "Boîte de Réception/PAYS/RUSSIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "RUSSIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("RUSSIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "SERBIE" dans le dossier "Boîte de Réception/PAYS/SERBIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "SERBIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("SERBIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "SLOVAQUIE" dans le dossier "Boîte de Réception/PAYS/SLOVAQUIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "SLOVAQUIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("SLOVAQUIE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "SLOVENIE" dans le dossier "Boîte de Réception/PAYS/SLOVENIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "SLOVENIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("SLOVENIE E79A E60Q")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "SUEDE" dans le dossier "Boîte de Réception/PAYS/SUEDE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "SUEDE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("SUEDE")
            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "SUSPENS-TITRES et CASH" dans le dossier "Boîte de Réception/SUSPENS TITRES CASH"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "SUSPENS-TITRES et CASH") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("SUSPENS TITRES CASH")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "TITRES PHYSIQUES" dans le dossier "Boîte de Réception/TITRES PHYSIQUES"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "TITRES PHYSIQUES") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("TITRES PHYSIQUES")
'            myItems.Move myFolderDestination

        'Rangement des emails catégorisés "TURQUIE" dans le dossier "Boîte de Réception/PAYS/TURQUIE"
        ElseIf (myItems.UnRead = False) And (myItems.Categories = "TURQUIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
            Set myFolderDestination = myFolder.Folders("PAYS").Folders("TURQUIE")
            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "UKRANIE" dans le dossier "Boîte de Réception/PAYS/UKRAINE"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "UKRANIE") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("PAYS").Folders("UKRAINE")
'            myItems.Move myFolderDestination

'        'Rangement des emails catégorisés "USA" dans le dossier "Boîte de Réception/PAYS/USA"
'        ElseIf (myItems.UnRead = False) And (myItems.Categories = "USA") And (((Temps_Presence_Email) >= Temps_Seuil_Rangement)) Then
'            Set myFolderDestination = myFolder.Folders("PAYS").Folders("USA")
'            myItems.Move myFolderDestination

        End If

'    ElseIf (myItems.UnRead = False) And (myItems.Categories = "") Then
'        ' NE RIEN FAIRE
'        'MsgBox (myItems.Categories)
'
    ElseIf (myItems.UnRead = True) And (myItems.Categories <> "") Then
        myItems.UnRead = True

    ElseIf (myItems.UnRead = True) And (myItems.Categories = "") Then
        'myItems.UnRead = True

    End If

    Next myItems

    MsgBox ("OK")

End Sub

Bonjour je vous remercie pour votre réponse.

J'ai modifié "myOIApp".

Je ne souhaite pas créer un nouveau destinataire dans ma boite email mais je souhaite appliquer cette macro dans une boite email partagee.

J'ai toujours le probleme Incompatibilité de type...

Merci pour votre aide.

Re,

Juste une question ou a été placé ce code dans Outlook, j'espère

Je n'ai actuellement pas le temps de le tester, comme il faut y faire des modifications pour que cela fonctionne chez moi

Mais faites du pas à pas dans le déroulement de votre code !
Mettez un point d'arrêt (F9) sur la ligne Set myOlApp...
Et faite dérouler le code pas à pas avec F8

@+

J'ai déjà fait ça. Je fais du pas à pas dans le débogage.

Le code est placé sur VBA Outlook --> Projet 1 (VbaProject.OTM) --> Microsoft Outlook Objects --> ThisOutlookSession

Merci pour votre aide :)

Re,

Nous sommes bien d'accord, "Adresse_Email" est bien remplacée par votre adresse mail ?

Set Nom_Boite_Email = Mon_Namespace.CreateRecipient("prenom.nom@fai.com")

@+

Nous sommes d'accord que l'adresse mail est l'adresse email de la boite d email de l'equipe sur laquelle je souhaite faire tourner la macro.

Merci pour votre aide.

Ok

Donc sur mon poste, cela semble fonctionner

Il faut donc mettre une gestion d'erreur ou une continuation de code en cas d'erreur

' Code avant ....
On Error Resume Next
For Each myItems In myFolder.Items
' Code après
Next myItems
On Error Goto 0

@+

Merci pour l'aide. La macro ne plante pas mais il parcourt 77 emails...

J'en ai plus de 4000...

Si vous voyez comment on peut faire ?

Je vous remercie pour votre aide.

Merci vraiment pour l'aide que vous m'apportez.

Mon but est de ranger automatiquement des emails catégorisés lus d'une boite email partagée (boite commune à des collaborateurs) qui sont présents dans la boite de réception à partir de 5 jours ou plus.

Merci !

Je crois que tous les emails que je traite ne sont pas du même type. C'est pour cela qu'il m'affichait "Incompatibilité de type".

Saurez-vous comment je peux traiter tous les emails qui sont présents dans la boîte de réception ?

Merci d'avance,

Rechercher des sujets similaires à "probleme incompatibilite type boucle"