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 pièce jointe outlook ok mais j'arrive pas à créer automatiquement un fichier


Sujet :

VBA Outlook

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 24
    Points : 15
    Points
    15
    Par défaut Extraction pièce jointe outlook ok mais j'arrive pas à créer automatiquement un fichier
    Bonjour !

    Je cherchais à extraire d'outlook 2007 tous les jours, 3 fichiers portant toujours le même nom, vers un dossier déjà existant (c:\nathalie) juste que là j'y suis parfaitement arrivée. Mais je n'arrive pas à lui dire qu'il faut que ces 3 fichiers arrivent dans un sous dossier qu'il faut créer automatiquement avec la date du jour (02102015). Pourriez vous m'aider ???? milles merci !!!


    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
    Dim x As Integer
     
        'Permet d'extraire pj de boite de réception 
    Sub ExtrairePjXml()
        Dim Ol As New Outlook.Application
        Dim Ns As Outlook.NameSpace
        Dim Inbox As MAPIFolder
     
        Set Ns = Ol.GetNamespace("MAPI")
        Set Inbox = Ns.GetDefaultFolder(olFolderInbox)
     
        Dim x As Integer
        Dim y As Integer
        Dim OLmail 'As Outlook.MailItem
        Dim pceJointe As Outlook.Attachment
        Dim SousDossier As Outlook.MAPIFolder
     
        If Inbox.DefaultItemType = 0 Then
            For Each OLmail In Inbox.Items
                If Not OLmail.Attachments.Count = 0 Then
                    For y = 1 To OLmail.Attachments.Count
                         Set pceJointe = OLmail.Attachments(y)
                         'pceJointe.SaveAsFile "C:\" & x & "_" & pceJointe
                         If pceJointe.FileName Like "*PROD.ENTREPARTICULIERS*" Then
                            x = x + 1
                            pceJointe.SaveAsFile "C:\nathalie\" & x & "_" & pceJointe.FileName
                         End If
                        Set pceJointe = Nothing
                    Next y
                End If
            Next OLmail
        Else
            MsgBox (Inbox.DefaultItemType)
        End If
     
    End Sub

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 180
    Points
    17 180
    Par défaut
    Salut
    je pense qu'il faut créer le sous dossier avant de sauvegarder le fichier (et peut être vérifier avant s'il existe ou pas)
    Pour construire le nom du sous dossier en VBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim NomDoss As String
    NomDoss = Format(Day(Date), "00") & Format(Month(Date), "00") & Year(Date)
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 24
    Points : 15
    Points
    15
    Par défaut erreur de forum
    Bonjour,


    Merci pour la construction du dossier... reste à savoir comment je m'y prend pour que mes 3 fichiers soit sauvés automatiquement dans un fichier qui doit se créer avec la date du jour...

    Nathalie

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonjour,

    pour créer un dossier en VBA tu peu-utiliser MKDIR

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 24
    Points : 15
    Points
    15
    Par défaut
    Merci Mr Baker !!

    Sauf que je ne suis pas très douée en VBA et que j'arrive au bout de mes "faibles" connaissances... donc... comment puis je utiliser la fonction MKDIR dans le code que j'utilise déjà ? en sachant qu'il me faut un sous dossier chaque jour....

    merci

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Re,

    voilà :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    '(...)
    Dim NomDoss As String
     '(...)
     x = x + 1
     
    NomDoss = "c:\ " & Format(Date, "ddmmyyyy")
    If Dir(NomDoss, vbDirectory) = "" Then MkDir NomDoss 'Créé le dossier s'il nexiste pas
    pceJointe.SaveAsFile NomDoss & "\" & x & "_" & pceJointe.Filename

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 24
    Points : 15
    Points
    15
    Par défaut
    Merci beaucoup ! ca marche nickel !


    merci pour votre aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraction pièces jointes Outlook via VBA
    Par pontoise dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 14/07/2017, 14h34
  2. [XL-2003] Extraction pièce jointe Outlook en fct Objet du mail via Excel 2003
    Par ivanG dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 25/07/2014, 14h49
  3. Extraction pièces jointes Outlook via VBA
    Par roidurif dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 22/12/2009, 09h56
  4. enregistrer les pièces jointes outlook selon un objet
    Par tibofo dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 08/05/2009, 18h02
  5. Pièce jointe, bonne taille mais lecture impossible !
    Par malabarbe dans le forum Langage
    Réponses: 5
    Dernier message: 11/06/2008, 03h12

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