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 :

Probleme règle + script


Sujet :

VBA Outlook

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut Probleme règle + script
    Bonjour dans le cadre d'un projet, il faut que je transfere les pieces jointes et le contenu de certain des emails que je reçoit dans un dossier de mon ordinateur.
    Pour cela j'ai essayé d'utiliser cette reponse dans la FAQ.

    http://outlook.developpez.com/faq/?p...eceive_Save_PJ
    Puis lorsque j'édite ma règle et que je lui met le bon script, à la fin outlook affiche: This is a client-only rule, and will process outlook is runnig.

    J'ai laissé mais après lorsque je recevai des emails qui correspondaient à ma règle (qui marchait si je stocke dans un sous dossier de ma inbox) rien ne se passait.

    C'est sous xp pro outlook 2003.

    Cordialement

  2. #2
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    tu peux nous en dire plus sur ta règle et surtout ta procédure


    Dolphy

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut
    Alors ma regle: je filtre les emails qui contiennent dans leurs sujets les mots Akamai ou Analytics et les emails venant d'une addresse particuliere, puis comme action je lance un script et je n'exécute aucune autre règle (comme demandé dans la faq).

    Ma procédure, je me suis contenté de recopier le script de la faq dans un module,que j'ai mis en lien avant, et j'ai créé un repertoire c/temp/pj comme demandé.

    Ca a marché un matin, lorsque j'ai lancé outlook mais depuis ça ne fait plus rien.

    Je voudrais que tout les jours lorsque outlook reçoit mes mails mes pieces jointes choisies par la règle soient transférées vers ce dossiers c/temp/pj.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut
    Je viens de recopier le script dans un module et j'ai bien édité une règle. Je m'envoi un email test, ça marche la piece jointe est bien transferée, par contre je m'envoie un deuxieme email un quart d'heure plus tard pour tester et là rien ne se passe.

    Il faut que je mette quoi exactement dans this outlooksession, pour l'instant j'ai rien mis pour le projet. Mais la règle dit que ça s'appliquera à chaque fois qu'un email arrive.

    Désolé je suis débutant en vba.

  5. #5
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    as-tu suivit le conseil d'Oliv- ?

    A partir de 2003 préférer l'événement NewMailEx pour ne pas parcourir tout le dossier ou l'exécution d'un script sur une règle.
    http://dolphy35.developpez.com/artic...k/vba/#LV-A-10


    Dolphy

  6. #6
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Bonjour,
    Il faut savoir si c'est la règle qui pose pb ou le script, peux tu nous coller ce script ?

    Pour savoir si le règle s'execute bien tu peux ajouter au début.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut
    Je vais suivre le conseil d'oliv et utiliser NewMailEx avec le script dune autre faq:
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    '---------------------------------------------------------------------------------------
    ' Procédure : Application_NewMailEx
    ' Auteur    : Dolphy35
    ' Site      : http://dolphy35.developpez.com
    ' Détail    : Permet de déplacer le nouveau message si celui-ci est envoyé par un expéditeur précis
    '---------------------------------------------------------------------------------------
    '
        'Déclartions
        Dim MonApp As Outlook.Application
        Dim MonMail As Object
        Dim MonNameSpace As Outlook.NameSpace
        Dim MonDossier As Outlook.Folder
     
        'Instance des variables
        Set MonApp = Outlook.Application
        Set MonNameSpace = MonApp.GetNamespace("MAPI")
        Set MonDossier = MonNameSpace.GetDefaultFolder(olFolderInbox)
        Set MonMail = Application.Session.GetItemFromID(EntryIDCollection)
     
            'Test si l'expéditeur correpond dans ce cas on déploce le mail
            'vers le dossier Temp de votre boîte de réception
            If MonMail.SenderEmailAddress = "personne@domaine.fr" Then
                MonMail.Move MonDossier.Folders("Temp")
            End If
     
    End Sub
    Seulement quand je compile pour la ligne Dim MonDossier As Outlook.Folder
    il m'affiche une erreur user-defined type not defined
    J'ai cocher la library Microsoft scripting runtime.
    Après je vais reprendre un partie de l'autre script pour deplacer les pieces jointes vers un autre dossier de mon ordinateur.

    Cordialement

  8. #8
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    SAlut,
    et qu'est-ce qui n'alliat pas dans
    Sub extrait_PJ_vers_rep(strID As Outlook.MailItem) ?

    Ajoute une référence à Microsoft CDO 1.21 (OU WINDOWS 2000)

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut
    Pour Sub extrait_PJ_vers_rep(strID As Outlook.MailItem) , le script ne marchait tout simplement pas chez moi, quand je copiais le script dans le module. Je creais la règle, je respectais les indications de la faq, ça marchait une fois et puis c'est tout. Alors je ne sais pas si il fallait que je rentre du code dans thisoutlooksession.

    Pour le newmailex j'ai toujours le meme probleme avec toutes les références que tu m'a proposé.

  10. #10
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Salut,
    Le problème doit venir de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set MonMail = Application.Session.GetItemFromID(EntryIDCollection)
    où EntryIDCollection n'a pas été défini.

Discussions similaires

  1. Problème de script
    Par HacHHacH dans le forum Linux
    Réponses: 2
    Dernier message: 05/04/2006, 20h46
  2. Probleme de script regex !!!
    Par calimero642 dans le forum Langage
    Réponses: 22
    Dernier message: 28/03/2006, 15h18
  3. probleme de script pour trier dynamiquement un tableau
    Par K_!!! dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/02/2006, 16h46
  4. Probleme de script...
    Par Empty_body dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 16/01/2006, 22h31
  5. probleme avec script perl grab_tv_fr.pl
    Par ZiMo dans le forum Langage
    Réponses: 6
    Dernier message: 30/11/2005, 17h12

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