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

Macros et VBA Excel Discussion :

Récupérer adresse mail de l'expéditeur


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Technicien SAV
    Inscrit en
    Novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien SAV

    Informations forums :
    Inscription : Novembre 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut Récupérer adresse mail de l'expéditeur
    Bonjour à tous,
    je viens vous demander votre aide car ça fait des jours que je cherche une solution à mon problème et ça me rend fou !!

    J'ai écris il y a quelques années en VBA un petit script qui permet de traiter certains mail que nous recevons sur mon lieu de travail.

    C'est un script qui vérifie l'adresse mail de l'expéditeur et suivant l'expéditeur il enregistre ou écrit quelque chose dans un fichier texte.

    Ce script à toujours fonctionné à la perfection!! Mais dernièrement on a changé nos PC et donc une fois tout réinstallé le script ne fonctionne plus!! Pourtant il est comme d'origine je n'ai absolument rien changé.

    L'erreur que j'ai est la suivante:
    "Erreur d'exécution '91':
    Variable objet ou variable de Bloc With non définie."

    Et cette erreur est sur la ligne N°:21 (envoyeur = It.SenderEmailAddress) du code ci-dessous.

    Je vous remercie d'avance pour votre aide.

    Voilà le code:
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    Option Explicit
    Dim WithEvents objInboxItems As Outlook.Items
     
    Private Sub initialiser()
      Dim objInboxFolder As Outlook.MAPIFolder
      Set objInboxFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
      Set objInboxItems = objInboxFolder.Items
    End Sub
     
    Private Sub Application_Startup()
      initialiser
    End Sub
     
    Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
    Dim PATH As String
    Dim objMail As MailItem
    Dim message As String
    Dim objAttachment As Outlook.Attachment
    Dim It As Outlook.MailItem
    Dim envoyeur As String
    envoyeur = It.SenderEmailAddress
      If envoyeur = "qqun@qqpart.com" Then
        GoTo stammakte
      Else:
        If envoyeur = "qqun2@qqpart.com" Then
          GoTo stammakte
        Else:
          If envoyeur = "qqun3@qqpart.fr" Then
            GoTo devis_avant
          Else:
            Exit Sub
          End If
        End If
      End If
    stammakte:
      Dim sys, ann, num
      Dim msg, Style, Title, Response, resultat
      On Error GoTo fini:
      Set objMail = Item
      sys = Mid(objMail.Subject, 1, 3)
      PATH = "C:\reparations\" & sys & "\"
      If IsNumeric(Mid(objMail.Subject, 5, 1)) = False Then
        ann = Mid(objMail.Subject, 5, 1)
        num = Mid(objMail.Subject, 6)
      Else:
        ann = Mid(objMail.Subject, 5, 2)
        num = Mid(objMail.Subject, 7)
      End If
      If Len(num) = 1 Then num = "0000" & num
      If Len(num) = 2 Then num = "000" & num
      If Len(num) = 3 Then num = "00" & num
      If Len(num) = 4 Then num = "0" & num
      If Len(num) = 5 Then num = num
      If objMail.Attachments.Count > 0 Then
        For Each objAttachment In objMail.Attachments
          objAttachment.SaveAsFile PATH & sys & "-" & ann & num & ".pdf"
        Next objAttachment
      End If
    fini:
      Exit Sub
     
    devis_avant:
    Set objMail = Item
      Dim objet As String
      objet = objMail.Subject
      Dim fichier As String
      fichier = "C:\reparations\devis_a_faire_outlook.txt"
        If InStr(objet, "A FAIRE") > 0 Then
        On Error GoTo err
        Open fichier For Append As #1
        objet = Replace(objet, "Réparation ", "")
        objet = Replace(objet, " A FAIRE", "")
        Print #1, "##" & objet
        Close #1
        GoTo fin
    err:
        Open fichier For Output As #1
        objet = Replace(objet, "Réparation ", "")
        objet = Replace(objet, " A FAIRE", "")
        Print #1, "##" & objet
        Close #1
        Else:
        If InStr(objet, "A DEFAIRE") > 0 Then
        On Error GoTo err2
          Open fichier For Append As #1
          objet = Replace(objet, "Réparation ", "")
          objet = Replace(objet, " A DEFAIRE", "")
          Print #1, "$$" & objet
          Close #1
          GoTo fin
    err2:
    Open fichier For Output As #1
          objet = Replace(objet, "Réparation ", "")
          objet = Replace(objet, " A DEFAIRE", "")
          Print #1, "$$" & objet
          Close #1
        Else:
          Exit Sub
        End If
    fin:
      End If
      End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour, regarde ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyExpediteur = objItem.SenderName

Discussions similaires

  1. Récupérer adresse mail destinataire
    Par melouille56 dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 20/07/2009, 15h08
  2. Récupérer adresses mails dans corps de message
    Par aztecq dans le forum VBA Outlook
    Réponses: 5
    Dernier message: 09/04/2009, 10h10
  3. Récupérer adresse mail et objet d'un mail outlook?
    Par drthodt dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/03/2009, 19h48
  4. Récupérer adresse mail de sharepoint
    Par pyroshady dans le forum InfoPath
    Réponses: 1
    Dernier message: 10/02/2009, 11h52
  5. Récupérer adresse mail dans un workflow
    Par pyroshady dans le forum SharePoint
    Réponses: 1
    Dernier message: 10/02/2009, 11h51

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