Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2010, 13h38   #1
Membre à l'essai
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 20
Points : 20
Par défaut Enregistrer les pièces jointes Outlook Express

Bonjour,

Ma question première est : existe-il une différence importante entre Outlook et outlook Express ?

J'ai un bout de code (voir ci dessous) qui est cessé enregistrer les pièces jointes de outlook. Je dois utiliser outlook express, et quand j'utilise ce code dans un module access 2003, il ouvre bien outlook express mais il ne fait aucune action d'enregistrement.

Est-ce nomal docteur ??
Code :
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
Sub SaveAttachments(strPath As String)
    Dim Ol_App As New Outlook.Application
    Dim Ol_MAPI As Outlook.NameSpace
    Dim Ol_Items As Outlook.Items
    Dim Ol_Item As Outlook.MailItem
    '
    Dim strAttachment As String
    Dim NbAttachments As Integer
    Dim i As Integer
    Dim NbEmails As Integer
    '
    Set Ol_MAPI = Ol_App.GetNamespace("MAPI")
    Set Ol_Items = Ol_MAPI.PickFolder.Items
    '
    For Each Ol_Item In Ol_Items
        NbAttachments = Ol_Item.Attachments.Count
        i = 1
        Do While i <= NbAttachments
            strAttachment = Ol_Item.Attachments.Item(i).FileName
            Ol_Item.Attachments.Item(i).SaveAsFile strPath & strAttachment
            i = i + 1
        Loop
    Next Ol_Item
    '
    Set Ol_Item = Nothing
    Set Ol_Items = Nothing
    Set Ol_MAPI = Nothing
    Set Ol_App = Nothing
End Sub
kervin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 14h02   #2
Rédacteur/Modérateur

 
Avatar de argyronet
 
Homme Jean-Philippe AMBROSINO
Panseur de bobos en solutions ETL
Inscription : mai 2004
Messages : 3 650
Détails du profil
Informations personnelles :
Nom : Homme Jean-Philippe AMBROSINO
Localisation : France

Informations professionnelles :
Activité : Panseur de bobos en solutions ETL
Secteur : Finance

Informations forums :
Inscription : mai 2004
Messages : 3 650
Points : 6 210
Points : 6 210
Envoyer un message via MSN à argyronet
Bonjour,

Je pense très certainement que strPath n'existe pas au moment de l'exécution...
Tu peux greffer dans ton code un bloc comme ceci par exemple :
Code :
1
2
3
4
    If Dir(strPath, 16) = "" Then
        MsgBox "Le dossier '" & strPath & "' doit exister si vous voulez y déposer les pièces jointes !", vbExclamation
        Exit Sub
    End If
juste après les déclarations...

Argy
__________________
Ils comptent sur vous...

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

Web Site@Mail
Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007
Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010
MDB Viewer : Visionneuse Access v4.0
argyronet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 15h57   #3
Membre à l'essai
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 20
Points : 20
J'ai intégré ton bloc, mais le résultat reste inchangé

En fait il ne me donne aucun msg d'erreur, il ne fait tout simplement rien ...

à part me demander de sélectionner un folder dans une liste de répertoires Outlook
kervin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 16h47   #4
Rédacteur/Modérateur

 
Avatar de argyronet
 
Homme Jean-Philippe AMBROSINO
Panseur de bobos en solutions ETL
Inscription : mai 2004
Messages : 3 650
Détails du profil
Informations personnelles :
Nom : Homme Jean-Philippe AMBROSINO
Localisation : France

Informations professionnelles :
Activité : Panseur de bobos en solutions ETL
Secteur : Finance

Informations forums :
Inscription : mai 2004
Messages : 3 650
Points : 6 210
Points : 6 210
Envoyer un message via MSN à argyronet
Et au pas à pas (F8)... Qu'est ce que ça donne ?
Est-ce que ton dossier cible existe ?

Vois-tu réellement le nom du fichier correspondant à la pièce jointe pour un Item donné ?

Ici, ça marche très bien donc tu as quelque chose qui ne vas pas chez toi....

Argy
__________________
Ils comptent sur vous...

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

Web Site@Mail
Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007
Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010
MDB Viewer : Visionneuse Access v4.0
argyronet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2010, 13h22   #5
Membre à l'essai
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 20
Points : 20
Salut,
Désolé pour le temps de réaction, mais ici en plus du boulot il y a le boulot ...

J'ai bien testé avec F8 mais à ce niveau-ci :

Code :
 For Each Ol_Item In Ol_Items
Il m'indique que
Citation:
Ol_Item = nothing
Y aurait-t-il une diff entre Outlook et Outlook express ??
kervin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2010, 09h34   #6
Rédacteur/Modérateur

 
Avatar de argyronet
 
Homme Jean-Philippe AMBROSINO
Panseur de bobos en solutions ETL
Inscription : mai 2004
Messages : 3 650
Détails du profil
Informations personnelles :
Nom : Homme Jean-Philippe AMBROSINO
Localisation : France

Informations professionnelles :
Activité : Panseur de bobos en solutions ETL
Secteur : Finance

Informations forums :
Inscription : mai 2004
Messages : 3 650
Points : 6 210
Points : 6 210
Envoyer un message via MSN à argyronet
Oui il y a une différence entre OE et Outlook.
Outlook Express ne supporte pas les appel via automation et les message sont stockés dans des fichiers DBX.
Il n'est donc pas possible d'exploiter ta procédure et le fait d'avoir un Nothing est justifié.

Il faut donc extraire tes pièces jointes par un autre procédé que je ne connais pas, humm, je n'ai pas cherché,
mais tu dois décortiquer les fichiers dbx qui se situent en général dans :
$UserName$\Local Settings\Application Data\Identities\{8CC9528D-03C0-46EB-A415A00FF186CA255}\Microsoft\Outlook Express
où un fichier dbx représente un dossier et tout son contenu.

Argy
__________________
Ils comptent sur vous...

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

Web Site@Mail
Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007
Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010
MDB Viewer : Visionneuse Access v4.0
argyronet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2010, 17h49   #7
Membre à l'essai
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 20
Points : 20
Oké oké,

Merci pour l'info, je vais chercher dans cette direction.

Les soirées d'hiver sont longues, j'ai maintenant de quoi les occuper.

@+
kervin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h01.


 
 
 
 
Partenaires

Hébergement Web