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

Contribuez Discussion :

Envoyer un fichier par mail sans Outlook [FAQ]


Sujet :

Contribuez

  1. #1
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    Via CDO en cochant sous VBE Outils|Références Microsoft CDO for Exchange xxxx Library
    A adapter à ton contexte,ici envoi de fichier Pdf
    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
     
    Sub Envoi_CDO1()
    Dim CdoMessage As CDO.Message
    Dim Fichier As Variant
     
        ChDir "C:\Documents and Settings\UserName\Mes documents\PdfOut"
        Fichier = Application.GetOpenFilename("Fichiers PDF (*.pdf), *.pdf")
     
        If Fichier = False Then Exit Sub
     
        Set CdoMessage = New CDO.Message
        With CdoMessage
            .Subject = "Exemple"
            .From = "xxxxx@wanadoo.fr"
            .To = "yyyyy@orange.fr"
            .CC = ""
            .BCC = ""
            .TextBody = "Texte dans le corps de message"
            .AddAttachment Fichier
            .Send
        End With
     
        Set CdoMessage = Nothing
    End Sub
    Ou sans rien cocher

    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
     
    Sub Envoi_CDO2()
    Dim CdoMessage As Object
    Dim Fichier As Variant
     
        ChDir "C:\Documents and Settings\UserName\Mes documents\PdfOut"
        Fichier = Application.GetOpenFilename("Fichiers PDF (*.pdf), *.pdf")
     
        If Fichier = False Then Exit Sub
     
        Set CdoMessage = CreateObject("CDO.Message")
        With CdoMessage
            .Subject = "Exemple"
            .From = "xxxxx@wanadoo.fr"
            .To = "yyyyy@orange.fr"
            .CC = ""
            .BCC = ""
            .TextBody = "Texte dans le corps de message"
            .AddAttachment Fichier
            .Send
        End With
     
        Set CdoMessage = Nothing
    End Sub

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    si tu veux envoyer la feuille active
    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
    37
    38
    39
    40
    41
    42
    43
     
    Option Explicit
     
    Sub Tst()
    Dim Sourcewb As Workbook
    Dim Destwb As Workbook
    Dim Temp As String
    Dim CdoMessage As Object
    Dim Fichier As String
     
        Set Sourcewb = ActiveWorkbook
        ActiveSheet.Copy
        Set Destwb = ActiveWorkbook
     
        Temp = ThisWorkbook.Path & Application.PathSeparator & "Toto.xls"
     
        With Application
            .ScreenUpdating = False
            .DisplayAlerts = False
        End With
     
        Destwb.SaveAs Temp
        Fichier = Destwb.Path & Application.PathSeparator & Destwb.Name
        Destwb.Close
        Application.DisplayAlerts = True
     
        Set CdoMessage = CreateObject("CDO.Message")
        With CdoMessage
            .Subject = "Exemple"
            .From = "xxxxx@wanadoo.fr"
            .To = "yyyyy@hotmail.fr"
            .CC = ""
            .BCC = ""
            .TextBody = "Texte dans le corps de message"
            .AddAttachment Fichier
            .Send
        End With
     
        Application.ScreenUpdating = True
     
        Set CdoMessage = Nothing
        Kill Fichier
    End Sub

  3. #3
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    Pour le classeur complet
    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
    Option Explicit
     
    Sub Tst_Wb()
    Dim SourceWb As Workbook
    Dim CdoMessage As Object
    Dim Fichier As String
     
        Set SourceWb = ActiveWorkbook
        Fichier = ThisWorkbook.Path & Application.PathSeparator & "Toto.xls"
     
        SourceWb.SaveCopyAs Fichier
     
        Set CdoMessage = CreateObject("CDO.Message")
        With CdoMessage
            .Subject = "Exemple"
            .From = "xxxxx@wanadoo.fr"
            .To = "yyyyy@orange.fr"
            .CC = ""
            .BCC = ""
            .TextBody = "Texte dans le corps de message"
            .AddAttachment Fichier
            .Send
        End With
     
        Set CdoMessage = Nothing
        'Kill Fichier
    End Sub
    On pourra dans ce cas envisager d'envoyer le Classeur complet sans le code VBA

Discussions similaires

  1. Envoyer un fichier par mail
    Par kmaniche dans le forum C++Builder
    Réponses: 21
    Dernier message: 15/11/2009, 20h27
  2. [XL-2003] envoyer un fichier par mail
    Par facteur dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 09/09/2009, 23h12
  3. envoyer un fichier par mail
    Par alsimbad dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 07/03/2008, 14h31
  4. [Mail] Envoyer un fichier par mail
    Par Oberown dans le forum Langage
    Réponses: 3
    Dernier message: 24/10/2005, 15h55

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