IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Outlook Discussion :

Marquer comme non lu


Sujet :

VBA Outlook

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Marquer comme non lu
    Bonjour ,

    j'arrive a marquer comme non lu tous les mails d'un sous dossiers dans "boite de réception" en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
       Set MonNameSpace = Application.GetNamespace("MAPI")
        Set DossierDefautElementsRecus = MonNameSpace.GetDefaultFolder(olFolderInbox)
        Set MonDossierElementsRecus = DossierDefautElementsRecus.Folders("------------------------------- BE CONTACT")
    
           Set myItemsRecus = MonDossierElementsRecus.Items
    For i = myItemsRecus.Count To 1 Step -1
            myItemsRecus(i).UnRead = True
        Next i
    mais comment faire si le dossier est à la racine , au meme niveau que boite de reception?

    merci pour votre aide

  2. #2
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    En utilisant l'objet parent, voici un exemple à adapter qui affiche tous les dossiers au même niveau que la boite de réception.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub testdoss()
    Dim mpfRoot As Outlook.MAPIFolder
        Dim mpf As Outlook.MAPIFolder
        Dim idx As Integer
     
        Set mpf = Application.Session.GetDefaultFolder(olFolderInbox)
        Set mpfRoot = mpf.Parent
        For idx = 1 To mpfRoot.Folders.Count
            MsgBox mpfRoot.Folders.item(idx).Name
        Next
    End Sub
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    excellent!
    merci beaucoup christophe

    je cherche à lancer cette macro à chaque fois que je clique sur "envoyer/recevoir"

    comment dois je faire stp ?

  4. #4
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Le bouton Envoyer/Recevoir est un objet de type CommandBarPopup et il n'existe pas de gestion de l'évènement Clic dessus. Peut-être est-ce possible via la propriété Onaction de définir une macro derrière mais je ne suis pas sûr qu'elle soit accessible sur tous les éléments standards.
    En revanche, c'est beaucoup plus simple de le faire sur un bouton en personnalisant un peu la barre d'outil standard.

    Voici un exemple à adapter lors du clic sur "Envoyer/Recevoir" Tout dans la commandeBarPopup "Envoyer/Recevoir".
    32838 correspond à l'identifiant de la CommandBarPopup "Envoyer/Recevoir" et 1et le 1er contrôle soit "Envoyer/Recevoir Tout"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Public WithEvents colCBars         As Office.CommandBars
    Public WithEvents cmdBold          As Office.CommandBarButton
     
    Sub Initialize_CommandBarcontr()
     
    Set cbrBar = Application.ActiveExplorer.CommandBars("Standard")
      With cbrBar
        Set cmdBold = .FindControl(, 32828).Controls(1)
        End With
    End Sub
     
    Private Sub cmdBold_Click(ByVal Ctrl As Office.CommandBarButton, _
                               CancelDefault As Boolean)
     MsgBox "ok"
    End Sub
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

Discussions similaires

  1. [OL-2010] Règle Outlook: Le Marquer comme "Non Lu"
    Par Doogi111 dans le forum VBA Outlook
    Réponses: 3
    Dernier message: 21/06/2021, 11h55
  2. Marquer une classe comme "non serializable"
    Par paranoia dans le forum Général Java
    Réponses: 8
    Dernier message: 13/01/2011, 11h11
  3. Réponses: 3
    Dernier message: 11/05/2007, 12h25
  4. "Marquer comme Lu" vers le tableau de bord
    Par Jean-Marc.Bourguet dans le forum Evolutions du club
    Réponses: 17
    Dernier message: 17/05/2006, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo