Renommer une pièce jointe d'un mail dans Outlook 2007

Résolu
pascal31470
Messages postés
2
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
19 février 2013
- 18 févr. 2013 à 11:10
pascal31470
Messages postés
2
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
19 février 2013
- 19 févr. 2013 à 10:15
Bonjour,

Aprés pas mal de recherche sur internet et n'ayant rien trouvé de concluant, je pose ma question ici en espérant que quelqu'un sait faire:

Comment renommer une piece attachée d'un email dans Outlook 2007.
Seulement à l'interieur de l'email, et sans sauver cette pièce jointe dans un répertoire.
Dans mon cas il n'y en a qu'une à chaque fois.

Quelqu'un peut-il mettre le bout de code qui fait ça sur le forum

Merci beaucoup,
Pascal.

2 réponses

jordane45
Messages postés
35793
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 juillet 2022
358
18 févr. 2013 à 23:46
Bonjour,

Je ne sais pas si c'est possible, mais est ce que par hasard, en utilisant la propriété : .FileName vous ne pourriez-pas modifier le nom de la PJ ?
Après tout, les codes qui "sauvegardent" les PJ utilisent cette propriété pour obtenir le nom de la PJ.. alors on devrait surement pouvoir lui attribuer une valeur...(enfin je suppose sans avoir testé )


Au cas où.. le VbA vous le faites à partir d'Outlook directement ou d'excel (ou autre ) ?




Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
3
pascal31470
Messages postés
2
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
19 février 2013

19 févr. 2013 à 10:15
Merci pour cette réponse,
Je procede à partir des macros outlook depuis outlook.

J'ai le code ci-dessous, reconstruit avec des macros trouvées sur le net, mais ça ne fait rien à la ligne "objMailItem.Attachments.Name = AttName" qui devrait renommer la pièce jointe?

Alors si quelqu'un peut mettre ici un bout de code qui fait ça, merci beaucoup .

--------------------------------------------------------------------------------
Sub RenamePJ()

Outlook_Archive = "Boîte aux lettres - MOLA, Pascal"
Outlook_Folder = "Boîte de réception"
Subject_InStr = "Weight Sheet for - ADAP-DS "
Delete_Mail = False

cpt = 0
Set objoutlook = CreateObject("Outlook.Application")
Set objfolder = objoutlook.GetNamespace("MAPI").Folders(Outlook_Archive)

On Error Resume Next

Set objfolder = objfolder.Folders(Outlook_Folder)


If Not Err.Number = 0 Then
Exit Sub
End If
On Error GoTo 0

Set objItems = objfolder.Items
For mailIndex = objItems.Count To 1 Step -1
'On Error Resume Next
Set objMailItem = objItems.Item(mailIndex)
If objMailItem.Attachments.Count > 0 Then
If Not InStr(1, objMailItem.Subject, Subject_InStr, 1) = 0 Then


On Error Resume Next

For i = 1 To objMailItem.Attachments.Count
Set PJ = objMailItem.Attachments.Item(i)
AttName = PJ.DisplayName
AttName = Mid(AttName, 13)
ObjName = objMailItem.Subject
ObjName = Mid(ObjName, 28)
objMailItem.Subject = ObjName
objMailItem.Attachments.Name = AttName
cpt = cpt + 1
Next

On Error GoTo 0
If Delete_Mail Then objMailItem.Delete
End If
End If
Next

MsgBox cpt & " pieces jointes traitées."


End Sub
--------------------------------------------------------------------------------



Pascal
0