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 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
| Private Sub Application_NewmailEx(ByVal EntryIDCollection As String)
'SAUVEGARDE AUTOMATIQUE DES PIECES JOINTES POUR LES MAILS AIDE CASE OPTIONS OU SEENERGI
'DECLARATION DES VARIABLES
Dim MonApp As Outlook.Application 'APPLICATION DE MESSAGERIE
Dim MonNameSpace As Outlook.NameSpace
Dim MonDossier As Outlook.MAPIFolder 'DOSSIER OUTLOOK UTILISE
Dim MonMail As Outlook.MailItem 'OBJET DU MAIL
Dim numero As Integer
Dim PJ As String 'PIECE JOINTE
Dim NbAttachments As Integer 'NOMBRE DE PIECE JOINTE
Dim chemin As String 'DOSSIER D'ENREGISTREMENT DES PIECES JOINTES
Dim nb
Dim fichier 'NOM DU FICHIER ENREGISTRE
Dim nligne
'INSTANCE DES OBJETS
Set MonApp = Outlook.Application
Set MonNameSpace = MonApp.GetNamespace("MAPI")
Set MonDossier = MonNameSpace.GetDefaultFolder(olFolderInbox)
numero = MonDossier.Items.Count
nligne = 1
Do While nligne <= numero 'BOUCLE SUR LES MAILS DE LA BOITE DE RECEPTION
'chemin de destination des pièces jointes
Set MonMail = MonDossier.Items(nligne)
NbAttachments = MonMail.Attachments.Count
'contrôles possibles:nom de l'expéditeur, adresse mail expéditeur et sujet du mail
'MonMail.SenderName= ""
'MonMail.SenderEmailAddress
'MonMail.Subject
'QUAND CONTRAT SEENERGI AIDE CASE
If MonMail.Subject = "SEENERGI CASE" Then 'CONTROLE SUR L'OBJET DU MESSAGE
chemin = "Z:\DEVELOPPEMENT\CASE\RECEPTION\SEENERGI\"
i = 1
Do While i <= NbAttachments
PJ = MonMail.Attachments.Item(i).FileName
If Right(PJ, 5) = ".xlsx" Then 'ON VERIFIE L'EXTENSION DE LA PJ
' VERIFIER SI LE NOM FICHIER EXISTE DANS LE REPERTOIRE DE DESTINATION SINON L'INCREMENTER
fichier = Dir("Z:\DEVELOPPEMENT\CASE\RECEPTION\SEENERGI\" & strAttachment)
nb = 0
Do While fichier <> ""
nb = nb + 1
fichier = Dir("Z:\DEVELOPPEMENT\CASE\RECEPTION\SEENERGI\" & Left(PJ, Len(PJ) - 5) & "_" & nb & Right(PJ, 5))
Loop
If nb > 0 Then
PJ = Left(PJ, Len(PJ) - 5) & "_" & nb & Right(PJ, 5)
End If
MonMail.Attachments.Item(i).SaveAsFile chemin & PJ
'AJOUTER UNE NOTE DANS LE CORPS DU MESSAGE QUAND PJ ENREGISTREE
MonMail.Body = "----- PIECE JOINTE ENREGISTREE -----" & vbLf & MonMail.Body
' MARQUER LE MESSAGE COMME "LU"
MonMail.UnRead = False
' DEPLACER LE MAIL DANS LE DOSSIER CASE
MonMail.Move MonDossier.Folders("CASE")
End If
i = i + 1
Loop
Else
nligne = nligne + 1
End If
'QUAND BDC OPTONS AIDE CASE
If MonMail.Subject = "OPTIONS CASE" Then 'CONTROLE SUR L'OBJET DU MESSAGE
chemin = "Z:\DEVELOPPEMENT\CASE\RECEPTION\OPTIONS\"
i = 1
Do While i <= NbAttachments
PJ = MonMail.Attachments.Item(i).FileName
If Right(PJ, 5) = ".xlsx" Then 'ON VERIFIE L'EXTENSION DE LA PJ
' VERIFIER SI LE NOM FICHIER EXISTE DANS LE REPERTOIRE DE DESTINATION SINON L'INCREMENTER
fichier = Dir("Z:\DEVELOPPEMENT\CASE\RECEPTION\OPTIONS\" & PJ)
nb = 0
Do While fichier <> ""
nb = nb + 1
fichier = Dir("Z:\DEVELOPPEMENT\CASE\RECEPTION\OPTIONS\" & Left(PJ, Len(PJ) - 5) & "_" & nb & Right(PJ, 5))
Loop
If nb > 0 Then
PJ = Left(PJ, Len(PJ) - 5) & "_" & nb & Right(PJ, 5)
End If
MonMail.Attachments.Item(i).SaveAsFile chemin & PJ
'AJOUTER UNE NOTE DANS LE CORPS DU MESSAGE QUAND PJ ENREGISTREE
MonMail.Body = "----- PIECE JOINTE ENREGISTREE -----" & vbLf & MonMail.Body
' MARQUER LE MESSAGE COMME "LU"
MonMail.UnRead = False
' DEPLACER LE MAIL DANS LE DOSSIER CASE
MonMail.Move MonDossier.Folders("CASE")
End If
i = i + 1
Loop
Else
nligne = nligne + 1
End If
numero = MonDossier.Items.Count
Loop
End Sub |
Partager