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 :

Extraction d'une chaine de caractères depuis corps de message (associé a une règle)


Sujet :

VBA Outlook

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Extraction d'une chaine de caractères depuis corps de message (associé a une règle)
    bonjour, j'ai essayer de modifier du code laissé par Oliv. pour en extraire une chaine de caractères spéciale, un lien hypertexte (qui est associé a une image dans le mail hmtl Outlook)
    Tout d'abord j'essaye d'extraire le texte avant de me pencher sur ou stocker celui-çi :
    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
     
    Sub Recherche()
     
    Dim App As Outlook.Application
    Set App = Outlook.Application
    Dim Expl As Outlook.Explorer
    Set Expl = App.ActiveExplorer 'désigne l'exploreur actif càd la fenêtre des dossiers.
    Dim INSP As Outlook.Inspector
    Set INSP = ActiveInspector 'désigne la fenêtre de l'élement actif
    Dim LeMail As Outlook.MailItem
    ' or Dim LeMail As Object ?
    Set LeMail = ActiveInspector.CurrentItem
     
    DebutChainehptxt = InStr(1, LeMail.Body, "http://")
            If DebutChainehptxt > 0 Then
                FinChainehptxt = InStr(1, DebutChainehptxt, LeMail.Body, """")
                Chainehptxt = Mid(LeMail.Body, DebutChainehptxt, FinChainehptxt - DebutChainehptxt)
            End If
     
     
    Set LeMail = Nothing
    MsgBox "[" & Chainehptxt & "]"
    End Sub
    Le problème est que ce code me renvoie toujours un message box avec [ ]
    Je ne comprends pas pourquoi il ne trouve pas les liens hypertexte dans le corps de mes mails (en faisant éxécuter, ou en lancant ma macro depuis la barre d'outils), si quelqu'un a une idée d'ou vient le problème svp ?

    De plus, depuis la fenêtre des règles, si je fais éxécuter un script, je ne vois auncun script disponible alors que ma macro existe bel et bien :-s
    Merci, de bien vouloir m'aider.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 100
    Points : 89
    Points
    89
    Par défaut
    Regarde dans l'aide de l'editeur VBA...

    Je pense qu'il te manque un argument dans ton inStr

    A ++

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Bonjour,
    Merci pour cette réponse,
    Ca y est mon code est oprationnel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Set LeMail = ActiveInspector.CurrentItem
    lienhypertexte = "http://website.fr"
     
            DebutChainehptxt = InStr(LeMail.Body, lienhypertexte)
            If DebutChainehptxt > 0 Then
                FinChainehptxt = InStr(DebutChainehptxt, LeMail.Body, """")
                Chainehptxt = Mid(LeMail.Body, DebutChainehptxt, FinChainehptxt - DebutChainehptxt)
            End If
    Cependant, ce code ne marche que si un élément est affiché ActiveInspector.CurrentItem , or j'aimerai associ ce script a un message ciblé par une règle, Quelqu'un peut-il m'aider.
    J'ai regarder les différents éléments d'Inspector, et MailItem, je ne trouve pas le code qui me satisfairait :p

    De plus, je ne vois aucun scripts depuis "éxécuter un script" dans les options avancées des règles, pourtant la sécurité des macros est définie sur minimum.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 595
    Points : 34 274
    Points
    34 274
    Par défaut
    Bonjour,
    pour exécuter un script à l'arrivée d'un mail par exemple, je t'encourage à lire la
    http://outlook.developpez.com/faq/in...e_nouveau_mail
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 100
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par Enelass Voir le message
    Cependant, ce code ne marche que si un élément est affiché ActiveInspector.CurrentItem , or j'aimerai associ ce script a un message ciblé par une règle, Quelqu'un peut-il m'aider.
    Salut,

    Je ne comprends pas très bien ce que tu dis ci-dessus. Quelle est ta règle pour éxécuter ta macro?

    De plus il me semble avoir vu un article concernant l'execution d'une macro à partir d'une règle dans la FAQ...

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Pardon pour l'attente de la réponse.
    La règle c'est "si recu de tel expediteur alors executer le script".
    Bon j'ai laissé tomber, j'ai plus l'age et la motiv d'apprendre a develloper
    Merci de votre aide, c'est sympa cet esprit là

  7. #7
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 595
    Points : 34 274
    Points
    34 274
    Par défaut

    Il n'y a pas d'age pour apprendre à développer

    On reste disponible si jamais tu changes d'avis
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  8. #8
    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,

    Citation Envoyé par Enelass Voir le message
    Pardon pour l'attente de la réponse.
    La règle c'est "si recu de tel expediteur alors executer le script".
    Bon j'ai laissé tomber, j'ai plus l'age et la motiv d'apprendre a develloper
    Merci de votre aide, c'est sympa cet esprit là
    Comme le dis jpcheck, il n'y a pas d'âge ensuite pour ce que tu cherche, si tu ne veux pas faire un minimum je t'invite soit à ne pas te lancer dans ce genre de chose ou prendre une solution payante.

    Maintenant si tu veux faire un minimum voici une info http://outlook.developpez.com/faq/in...A#Script_Regle

    la Faq est pleine de ressources avec un bon moteur de recherche.


    Dolphy

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/05/2012, 16h53
  2. Réponses: 5
    Dernier message: 07/12/2011, 14h22
  3. Réponses: 4
    Dernier message: 07/09/2010, 10h12
  4. Réponses: 5
    Dernier message: 02/01/2006, 22h16
  5. Extraction d'une chaine de caractères
    Par megane dans le forum Langage
    Réponses: 2
    Dernier message: 05/01/2004, 14h52

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