Vendredi 27 Avril 2018  
Navigation
FAQ Outlook
» Foire Aux Questions «
Recherche
Téléchargements
Forums Outlook
Plan du site
Liens
Login

Les inscriptions sont fermées

Pseudo

Mot de passe

Se souvenir de moi



Mot de passe oublié ? Mot de passe oublié ?
Connexions
Bienvenue à [FAMACLUB]
le 1,414ème membre
Visiteurs en ligne : 4
Membres en ligne : 0

 beaulieu 2 semaines
 callaghi 6 semaines
 EMERGENCY 10 semaines
 Charlie76 12 semaines
 joscopp 22 semaines
 JièL 23 semaines
 julbast 23 semaines
 pirobert 24 semaines
 zorro71 47 semaines
 Alphator 65 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:223
En ligne :4
Max. en ligne:312
Max. / jour:66 529
Total hier:6 105
Total ce mois:144 597
Total visites:19 684 946
Moyenne/jour:5 702

Dernières 24h

























Publicité ; elle permet de financer le site
Navigation parmi les catégories/articles
« Catégorie     Q15000 Macros - VBA (41)  Catégorie »
[<<]  « Article  Article »  [>>]
R15230 [VBA] Extraire automatiquement les pièces jointes vers un dossier Windows.

Vous recevez règulièrement des mails contenant des PJ à extraire dans le même dossier Windows voici un code qui vous servira. Il utilise les règles avec l'option exécuter un script.


Copiez ce code dans un module. Puis créez une règle à l'arrivée d'un nouveau message selon les conditions que vous souhaitez et choississez comme action Exécuter un script + arrêter de traiter plus de règles.

Dans cet exemple le répertoire C:\TEMP\pj doit exister.

Vous devez aussi référencer Microsoft CDO 1.21 Library dans VBE.
Pour Outlook 2007 il faut le télécharger là :
http://www.microsoft.com/downloads/details.aspx?familyid=2714320d-c997-4de1-986f-24f081725d36&displaylang=en


Sub extrait_PJ_vers_rep(strID As Outlook.MailItem)

' ***olivier CATTEAU***

' 23 avril 2007

Dim olNS As Outlook.NameSpace

Dim MyMail As Outlook.MailItem

Dim expediteur
Set olNS = Application.GetNamespace("MAPI")

Set MyMail = olNS.GetItemFromID(strID.EntryID)

'MsgBox "nouveau message"

If MyMail.Attachments.Count > 0 Then

expediteur = MyMail.SenderEmailAddress


'on crée le répertoire où mettre les fichiers joints ##########################################################

'c:\temp\pj\ doit déjà exister !!!

Repertoire = "c:\temp\pj\" & expediteur & "\"

If Repertoire <> "" Then

If "" = Dir(Repertoire, vbDirectory) Then

MkDir Repertoire

End If

End If


'on traite les pj

Dim PJ, typeatt

For Each
PJ In MyMail.Attachments

'vérification si c'est une PJ Embedded

typeatt = Isembedded(strID, PJ.index)

If typeatt = "" Then

If "" <> Dir(Repertoire & PJ.FileName, vbNormal) Then

MsgBox Repertoire & PJ.FileName & " existe !!"

'si existe copie vers le répertoire old

If "" = Dir(Repertoire & "old", vbDirectory) Then

MkDir Repertoire & "old"

End If

FileCopy Repertoire & PJ.FileName, Repertoire & "old\" & PJ.FileName

End If

PJ.SaveAsFile Repertoire & PJ.FileName

End If

Next PJ

'drapeau vert

MyMail.FlagIcon = olGreenFlagIcon

'Marque lu

MyMail.UnRead = False

MyMail.Save

'on déplace le mail vers un sous dossier outlook

Dim myDestFolder As Outlook.MAPIFolder

Set myDestFolder = MyMail.Parent.Folders("test")

MyMail.Move myDestFolder

End If

Set MyMail = Nothing

Set olNS = Nothing

Fin:

End Sub


' Function: Fields_Selector

' Purpose: View type of attachment

' olivier catteau fevrier 2006

Function Isembedded(ByVal strEntryID As String, attindex As Integer) As Variant

Dim oSession As MAPI.Session

' CDO objects

Dim oMsg As MAPI.Message

Dim oAttachs As MAPI.Attachments

Dim oAttach As MAPI.Attachment

' initialize CDO session

On Error Resume Next

Set oSession = CreateObject("MAPI.Session")

oSession.Logon "", "", False, False


' get the message created earlier

Set oMsg = oSession.GetMessage(strEntryID)

' set properties of the attached graphic that make

' it embedded and give it an ID for use in an <IMG> tag

Set oAttachs = oMsg.Attachments
Set oAttach = oAttachs.Item(attindex)

Dim strCID As String

strCID = oAttach.Fields(&H3712001E)

Isembedded = strCID

Set oMsg = Nothing

oSession.Logoff

Set oSession = Nothing


End Function



Publié par Oliv le lundi 23 avril 2007 17:22 0 Commentaires 25950 Lecture(s) Imprimer
Commentaires
les commentaires sont fermés.
Copyright et partage
Ce site est sous licence Creative Commons.
Vous pouvez utiliser toutes les informations présentent ici, mais il vous est interdit de les reproduire sans citer la source.

Creative Commons License
OUI au partage
NON au « copillage »

Ajouter aux favoris / partager : 
URL :
BBcode :
HTML :
Cliquez ci dessus sur le lien que vous voulez copier et [Ctrl] + [C] ou cliquez sur le bouton [ C ]
Articles similaires
Articles Catégories
R06032 Utiliser l'archivage automatique avec les dates de réception Q06000 Les fichiers d'Outlook
R15045 [VBA] Ouvrir l'arborescence des pst contenant une boîte de réception Q15000 Macros - VBA
R15930 [VBA] Création de menu dans outlook Q15000 Macros - VBA
R17070 VSTO et les formulaires d'Outlook 2007 Q17000 Formulaires
R15380 [VBA] Envoi via VBA : suppression de la confirmation d'envoi Q15000 Macros - VBA
Nuage de tags
R09110 Partager le carnet d'adresse d'Outlook 2000 avec Outlook Express 5, R06035 L'archivage ne fonctionne pas, R01240 Modifier la durée d'affichage de « l'alerte » sur le bureau ou afficher une boîte de dialogue à valider., R15270 [VBA] Exécuter un script sur une règle, R15250 [VBA] ImagesDansMessage, R17030 Pourquoi les données saisies dans un formulaire perso ne sont elles pas transmises / enregistrées ?, R15350 [VBA] Choix du compte selon les destinataires, R20040 Configurer un compte GMAIL pour Outlook 2002/2003, R12055 Planifier une réunion, R06010 Changer l'emplacement du .PST d'Outlook, R05060 Créer un « style » d'impression, R15030 [VBA] Supprimer le message SECURITY WARNING d'activation des Macros., R10040 Sauvegardez ses règles de gestion des messages, R15900 [VBA] Relever des boites pop sequentiellement (FREE), R11070 Restaurer les fichiers de paramètres d'Outlook

aucun Crack, CrackZ, no-CD, DownloadZ, TelechargementZ, Serial, Numéro de série, N0 de série, Serialz ni Keygen pour Outlook sur ce site.

Blague aléatoire
Publicité
Météo Marseille
[/\] Copyright JièL / Jean-Louis Goubert © 2003-2009 [/\]