Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/02/2011, 12h40   #1
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 0
Points : 0
Par défaut copier lignes excel et coller dans corps de mail outlook (VBA)

Bonjour,

J'ai créer un bouton sous access qui permet de creer un fichier pdf a partir d'un etat et de l'envoyer par mail par la suite dont voici le code vba:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Commande13_Click()
Dim vApplicationOutlook As Outlook.Application
Dim vmessage As Outlook.mailitem
 
PDFExportName = "Y:\AC\MIDDLE OFFICE\centra du jour\centra " & Format(DATE, "yyyymmdd") & ".pdf"
DoCmd.OutputTo acOutputReport, "1centra GLOBAL TEST", acFormatPDF, PDFExportName
DoCmd.OpenReport "1centra GLOBAL TEST", acViewPreview
Set vApplicationOutlook = _
CreateObject("outlook.application")
Set vmessage = vApplicationOutlook.createitem(0)
With vmessage
    .TO = "middleoffice@ac.com"
    .subject = "centra du jour"
    .body = "Y:\AC\2AM\reportings fréquence.xls"
    .Attachments.Add "Y:\AC\MIDDLE OFFICE\centra du jour\centra " & Format(DATE, "yyyymmdd") & ".pdf"
    .send
End With
 
End Sub
J'aimerais maintenant copier quelques lignes d'un tableux excel et les coller dans le corps de ce même mail mais je n'y parvient pas. Auriez vous des suggestions de code?

merci par avance
alienorcapital est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 10h06   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 753
Points : 1 753
Bonjour,
la solution serait d'écrire le message en HTML contenant une table
Code :
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
 
Private Sub Commande13_Click()
Dim vApplicationOutlook As Object
Dim vmessage As Object, message As Variant
 
message = "<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 3.2//EN"">"
message = message & "<HTML><HEAD><TITLE></TITLE></HEAD>"  'entete
message = message & "<BODY>"     'corps du message
message = message & "<P><FONT FACE=""Calibri"">Bonjour,</FONT></P><BR><BR>"
 
message = message & "<Table border=""2"">"
For ligne = 1 To 6   'lignes du tableau Excel
 message = message & "<tr>"
 For colonne = 1 To 5   'colonnes du tableau Excel
  message = message & "<td width=""100"">"
  message = message & Sheets("Feuil1").Cells(ligne, colonne)
  message = message & "</td>"
 Next colonne
 message = message & "</tr>"
Next ligne
 
message = message & "</table>"
message = message & "<br><br><P><FONT FACE=""Calibri"">Merci</FONT></P><BR>"
message = message & "</BODY></HTML>"
 
PDFExportName = "Y:\AC\MIDDLE OFFICE\centra du jour\centra " & Format(DATE, "yyyymmdd") & ".pdf"
DoCmd.OutputTo acOutputReport, "1centra GLOBAL TEST", acFormatPDF, PDFExportName
DoCmd.OpenReport "1centra GLOBAL TEST", acViewPreview
 
Set vApplicationOutlook = CreateObject("outlook.application")
Set vmessage = vApplicationOutlook.createitem(0)
With vmessage
    .To = "middleoffice@ac.com"
    .Subject = "centra du jour"
    .HTMLbody = message
    .Attachments.Add "Y:\AC\MIDDLE OFFICE\centra du jour\centra " & Format(DATE, "yyyymmdd") & ".pdf"
    .send
End With
 
End Sub
Il y a peut-être plus simple mais cette méthode fonctionne
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2011, 16h31   #3
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 0
Points : 0
Merci bcp pour votre réponsé rapide et efficace!
alienorcapital est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h35.


 
 
 
 
Partenaires

Hébergement Web