Mail automatique avec pj

Bonjour à tous,

Je voudrai envoyer un email automatique avec destinataires +documents en pièces jointes sous conditions :

J'ai trouvé dans le forum le code avec lequel j'arrive à envoyer un email avec pieces jointes fixes c'est à dire dont le nom du fichier ne change pas (attachement.add)

Par contre :

- je souhaiterai que la macro sélectionne dans un répertoire donné uniquement les documents (excel+word) du jour. Par exemple si dans ce répertoire sont présents des documents de la veille la macro ne doit en aucun cas les prendre en compte uniquement ceux du jour.

- comme il peu y avoir plusieurs documents, il faudrait une boucle.

J'ai besoins de votre aide pour écrire mon code en respectant la syntaxe vba ;

Voici mon code (format brut)

For each files in folder

if file.lastmodifieddate=date then

....la macro doit compiler tous les documents du jour et les ajouter en pièces jointe du mail

Sauriez-vous comment procéder ?

Merci par avance pour votre aide !

Tarik.

Bonjour,

Pour ne voir que les fichiers (Excel ou Word) du jour,

une possibilité serait de créer un Userform avec un ListView1

Private Sub UserForm_Initialize()
Dim fso As Object, sfoFolder As Object, fl As Object, sFolder As String, v1, v As Double, dt As Double
sFolder = "C:\Users\isabelle\Documents\test ADODB"  ' à adapter

Set fso = CreateObject("Scripting.FileSystemObject")
Set sfoFolder = fso.GetFolder(sFolder)

  With ListView1
        With .ColumnHeaders
            .Clear
            .Add , , "", 15
            .Add , , "Fichier", 200
            .Add , , "Date_Created", 120
        End With

        'Liste_fichies_XLS_DOC_DuJour
        For Each fl In sfoFolder.Files
            v1 = Split(fl, ".")

            If v1(UBound(v1)) Like "xls*" Or v1(UBound(v1)) Like "doc*" Then
              v = DateValue(fl.DateCreated)  'fl.DateLastModified
              dt = Date
              If v = dt Then
                    .ListItems.Add , , ""
                    .ListItems(.ListItems.Count).ListSubItems.Add , , Right(fl, Len(fl) - Len(sfoFolder) - 1)
                    .ListItems(.ListItems.Count).ListSubItems.Add , , fl.DateCreated
              End If
            End If
        Next
  End With

  ListView1.View = lvwReport
End Sub

Salut i20100

Dsl pour la réponse tardive merci !

Rechercher des sujets similaires à "mail automatique"