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

Macros et VBA Excel Discussion :

envoyer un fichier par mail


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut envoyer un fichier par mail
    bonjour à tous ,

    j'ai un soucis sur une macro que j'ai piqué sur un bouquin excel 2007 (au boulot, j'ai excel 2003).
    cette macro bugue au niveau de la varibale
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set ListeDest = ThisWorkbook.Worksheets("destinataire")
    .
    Et je n'y arrive pas à résoudre le problème .

    Voici la macro entiere

    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
    Sub  EMAIL
    'enregistrement du fichier()
    'chemin pour l'enregistrement
    ChDir "P:\Commun\Intranet PFC SLM\transport\REMORQUES VRAC\Archives\2009\septembre"
    'nom du fichier
    Dim MonFichier As String
    MonFichier = Range("A4").Value & "-" & Format([A2].Value, "dddd-mm-yyyy")
    ActiveWorkbook.SaveAs Filename:=MonFichier, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
     
     
    Dim MonOutlook As New Outlook.Application
    Dim MonMessage As Outlook.MailItem
    Dim ListeDest As Worksheet
     
    Set ListeDest = ThisWorkbook.Worksheets("destinataire")
     
    Set MonMessage = MonOutlook.CreateItem(olMailItem)
     
    With MonMessage
    .Subject = "Fiche liaisons depart SLDM"
    .Body = "Cordialement Madjid LARBI" & Chr(13) & "PFC Saint Laurent de Mure" & Chr(13) & "ZAC- Les Marches du Rhône-Ouest" & Chr(13) & "4, Boulevard de l'Europe" & Chr(13) & "69720 saint Laurent de Mure" & Chr(13) & "Tél : 04 72 48 36 47" & Chr(13) & "Fax  : 04 72 48 36 88"""
    .BodyFormat = olFormatHTML
     
    ListeDest.Range("A2").Select
    Do While ActiveCell.Value <> ""
      .Recipients.Add (ActiveCell.Value)
      ActiveCell.Offset(1, 0).Select
      Loop
     
    .Attachements.Add ActiveWorkbook.Path & "P:\Commun\Intranet PFC SLM\transport\REMORQUES VRAC\Archives\2009\septembre" & ActiveWorkbook.Name
    .Send
    End With
     
    MonOutlook.Quit
     
    Set MonOutlook = Nothing
    Set MonMessage = Nothing
    Set ListeDest = Nothing
     
    End Sub

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    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
    Dim MonOutlook As New Outlook.Application
    Dim MonMessage As Outlook.MailItem
    Dim Wbk As Workbook
    Dim ListeDest As Worksheet
    Dim MonFichier As String
    Dim i As Long
     
    Set Wbk = ThisWorkbook
        ChDir "P:\Commun\Intranet PFC SLM\transport\REMORQUES VRAC\Archives\2009\septembre"
        MonFichier = Range("A4").Value & "-" & Format([A2].Value, "dddd-mm-yyyy") & ".xls"
        Wbk.SaveCopyAs Filename:=MonFichier
     
        Set ListeDest = Wbk.Worksheets("destinataire")
            Set MonMessage = MonOutlook.CreateItem(olMailItem)
                With MonMessage
                    .Subject = "Fiche liaisons depart SLDM"
                    .Body = "Cordialement Madjid LARBI" & Chr(13) & "PFC Saint Laurent de Mure" & Chr(13) & "ZAC- Les Marches du Rhône-Ouest" & Chr(13) & "4, Boulevard de l'Europe" & Chr(13) & "69720 saint Laurent de Mure" & Chr(13) & "Tél : 04 72 48 36 47" & Chr(13) & "Fax  : 04 72 48 36 88"""
                    .BodyFormat = olFormatHTML
                    For i = 2 To ListeDest.Range("A65536").End(xlUp).Row
                      .Recipients.Add (ListeDest.Range("A" & i).Value)
                    Next i
                    .Attachments.Add Wbk.Path & "\" & Wbk.Name   'Attachments et non Attachements!!!
                    .Send
                End With
                MonOutlook.Quit
                Set MonOutlook = Nothing
            Set MonMessage = Nothing
        Set ListeDest = Nothing
    Set Wbk = Nothing
    Pas d'erreur mais le mail n'est pas envoyé! j'ai fais le test

    regarde par contre ce lien http://www.developpez.net/forums/d29...-piece-jointe/

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. envoyer un fichier par mail
    Par alsimbad dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 07/03/2008, 14h31
  3. Envoyer un fichier par mail sans Outlook
    Par kiki29 dans le forum Contribuez
    Réponses: 2
    Dernier message: 03/09/2007, 01h11
  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