Macro

Fermé
Icemansuperced Messages postés 85 Date d'inscription mardi 21 novembre 2017 Statut Membre Dernière intervention 4 février 2019 - 26 mars 2018 à 16:22
didibonf Messages postés 419 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 21 mai 2019 - 26 mars 2018 à 16:27
Bonjour,
j'aimerais créer une Macro que je peux utiliser sur plus d'un document (structure identique), par contre le nom des documents diffères... la macro créér permet d'envoyer le dossier excel par courriel automatiquement... par contre le courriel diffère a chaque fois ... le courriel que le fichier doit être envoyé se situe a la cellule T8 de la Feuil1. C'est ici ma problématique ...
MonMessage.to = Workbooks(?).Sheets(Feuil1).Cells(8,"T") ... Que dois-je metre dans WorkBooks (?), vu qu'il diffère a chaque fois...
Voici la MACRO:

Sub envoiClasseur()
Dim Fichier As Variant
'le programme ouvre une fenêtre où l'on sélectionne le fichier'
Fichier = Application.GetOpenFilename("Tous les fichiers(*.*),*.*")

MsgBox Fichier
'ici on demande d'utiliser Outlook comme client de messagerie'
Dim MaMessagerie As Object
Dim MonMessage As Object
Set MaMessagerie = CreateObject("Outlook.application")
Set MonMessage = MaMessagerie.Createitem(0)

'ici nous définissions les champs du mail'
'entre guillemet il faut indiquer les adresses mail'
MonMessage.to =XXXXXXXXXXXXX

'ici nous commençons la rédaction du mail
MonMessage.attachments.Add Fichier

'sujet du mail'
MonMessage = "Situation générale de l'apprenant pour le mois"

'Corps du mail'
contenu = "***The English follows the French***"
contenu = contenu & Chr(10) & Chr(13)
'les caractères Chr indique un saut de ligne'
contenu = contenu & "Bonjour" & Chr(10) & Chr(13)
contenu = contenu & "Voici trois graphiques résumant la situation de votre apprenant pour janvier. Vous trouverez un premier graphique indiquant le nombre absence par jour de votre employé. Un deuxième graphique montrant le nombre de journée de recouvrement. Le troisième graphique démontrant le nombre de total de retard. Si vous n'êtes plus le directeur de l'apprenant, s'il-vous-plait nous avisez ou pour toute autre erreur. Si vous avez des questions veuillez consulter le document des mesures de contrôles " & Chr(10) & Chr(13)
contenu = contenu & "Hello" & Chr(10) & Chr(13)
contenu = contenu & "You will find three graphics illustrating the situation of your learner for the month of January. The first graphic indicates the number of absences per days of your employee. The second graphic illustrates the number of day of absence. The third graphic illustrates the total time of delay. If you're no longer the manager of the learner, please notify us. If you've any question please consult the document bellows on control measures" & Chr(10) & Chr(13)
contenu = contenu & "CSC"
MonMessage.body = "contenu"

'ici on provoque l'envoi du mail et de sa pièce jointe'
MonMessage.Send

'réinitialisation de la messagerie'
Set MaMessagerie = Nothing

'Boite de dialogue qui confirme l'envoi du message et de sa pièce jointe'
MsgBox "Votre mail a bien été envoyé"

End Sub
A voir également:

1 réponse

didibonf Messages postés 419 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 21 mai 2019 95
26 mars 2018 à 16:27
Bonjour,
Je propose la solution suivante :
MonMessage.to = ActiveWorkbook.Sheets(Feuil1).Cells(8, "T")
0