Bonjour,
je souhaite envoyer une plage de cellules fixe ("A1:E21") en VBA en tant que corps du message.
Si vous avez une solution je suis preneur.
Merci d'avance.
Bonjour,
je souhaite envoyer une plage de cellules fixe ("A1:E21") en VBA en tant que corps du message.
Si vous avez une solution je suis preneur.
Merci d'avance.
bonjour
Tu peux tester ces deux exemples
Si tu disposes d'Excel2002 ou ultérieur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub envoiPlageCellules_Excel2002() 'http://support.microsoft.com/default.aspx?scid=kb;en-us;816644 ActiveSheet.Range("A1:B5").Select ' la plage de cellules à envoyer ActiveWorkbook.EnvelopeVisible = True With ActiveSheet.MailEnvelope .Introduction = "bonjour , ci joint les données ..." .Item.To = "destinataire@provider.fr" .Item.Subject = "le sujet" .Item.Send End With End Sub
sinon,
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
44
45 Sub PlageDeCellulesDansCorpsDuMessage() 'testé avec XP 'Send using the Pickup directory on the IIS server. 'adapté de : http://support.microsoft.com/default.aspx?kbid=286430 Dim iMsg As Object, iConf As Object Dim strHTML As String Dim i As Byte, j As Byte Set iMsg = CreateObject("CDO.Message") Set iConf = CreateObject("CDO.Configuration") strHTML = "" strHTML = strHTML & "<HEAD>" strHTML = strHTML & "<BODY>" strHTML = strHTML & "Bonjour , <BR>vous trouverez ci joint le tableau demandé<BR><BR>" strHTML = strHTML & "<B><SPAN STYLE='background-color:green;font-size:6mm'>Résultats : </SPAN></B><BR><BR>" strHTML = strHTML & "<TABLE BORDER>" For i = 1 To 5 'nombre de lignes (exemple plage A1:B5) strHTML = strHTML & "<TR halign='middle'nowrap>" For j = 1 To 2 'nombre de colonnes strHTML = strHTML & "<TD bgcolor='yellow'align='center'><FONT COLOR='blue'SIZE=3>" _ & Cells(i, j) & "</FONT></TD>" Next j strHTML = strHTML & "</TR>" Next i strHTML = strHTML & "</TABLE>" strHTML = strHTML & "<BR><BR>Cordialement<BR>" & Application.UserName strHTML = strHTML & "</BODY>" strHTML = strHTML & "" With iMsg Set .Configuration = iConf .To = "destinataire@provider.fr" 'renvoie une erreursi l'adresse est non valide '.From = "youralias@yourdomain.com" .Subject = "Test Envoi Tableau par mail" .HTMLBody = strHTML .Send End With End Sub
michel
Merci g testé et cela fonctionne, Il me reste un peu de custo à faire :
g mis sur ma page le bouton d'exec de la macro et du coup il me l'affiche dans le mail.
Merci beaucoup.
Partager