Bonjour,
Je suis confronté a ce pb :
j'ai une base de données qui me génére des états que l'on imprime pour faxer. Maintenant je voudrai les envoyer par mail. Donc il faudrait que aprés l'affichage de l'état à l'écran, il le transforme en .pdf et ouvre un message Outlook avec le pdf joint automatiquement.
Voilà, est-ce possible
merci
Helger
27-10-2005 - 17:30
Hello.
Cela n'est pas possible via Access. Il va falloir que tu passes pas un intermédiaire comme PdfCreator pour générer ton Pdf et l'envoyer par email.
Bonjour,
Ne pourrait-on pas automatiser cette tache en Vba?
merci
fitzchevalerie
15-12-2005 - 10:45
salut,
Autre possibilité que PDF : c'est simple en format Snapshot :
Code:
DoCmd.OutputTo acReport, "E_nomdeletat", "FormatSnapshot(*.snp)", Chemin & ".snp", False, ""
Pour généré un mail, perso voici la fonction que j'utilise :
Code:
Public Function mailer(Nb_Destinataire As Integer, PJ As Integer, Piece_Jointe As String, Destinataire0 As String, Destinataire1 As String, Destinataire2 As String, Destinataire3 As String, Destinataire4 As String, Destinataire5 As String, Destinataire6 As String, Destinataire7 As String, Destinataire8 As String, Destinataire9 As String, Sujet As String, Corps As String, Optional Nb_Dest_Copie As Integer = 0, Optional Envoi As Boolean)
Dim Msg As Object, o As Object
Dim Test As String
Dim Destinataire As String, DestCopie As String
Dim NbTo As Integer, I As Integer
Dim Dest(1 To 10) As String
NbTo = Nb_Destinataire - Nb_Dest_Copie
Set o = CreateObject("Outlook.application")
' creation d un nouveau message
On Error GoTo ErreurOutlook
Set Msg = o.Application.createitem(0)
On Error GoTo 0
' definition de l objet du message
Msg.subject = Sujet
'enregistrement du tableau des destinataires
Dest(1) = Destinataire0
Dest(2) = Destinataire1
Dest(3) = Destinataire2
Dest(4) = Destinataire3
Dest(5) = Destinataire4
Dest(6) = Destinataire5
Dest(7) = Destinataire6
Dest(8) = Destinataire7
Dest(9) = Destinataire8
Dest(10) = Destinataire9
' definition des destinataires du message
Destinataire = Destinataire0
For I = 2 To NbTo
Destinataire = Destinataire & ";" & Dest(I)
Next I
Msg.to = Destinataire
'definition des personnes en copie du message
DestCopie = ""
For I = 1 To Nb_Dest_Copie
DestCopie = DestCopie & ";" & Dest(NbTo + I)
Next I
Msg.cc = DestCopie
' definition du corp du message
Msg.Body = Corps
' ajout d un attachment si un chemin de fichier a été donné, il est possible de mettre plusieur attachement
' en mettant plusieur variables
If PJ = 1 Then
Msg.Attachments.Add Piece_Jointe
End If
'Active l option de demande de confirmation qd le message est lu
Msg.ReadReceiptRequested = True
' Affichage du message préparé pour envoi manuel par l utilisateur
Msg.display
If Not IsMissing(Envoi) Then
If Envoi = True Then Msg.Send
End If
Exit Function
ErreurOutlook:
MsgBox err.Description, vbCritical
Exit Function
End Function
C'est une ancienne fonction qui pourrait être amméliorée mais comme elle fonctionne bien, je n'ai jamais pris le temps ...
Si tu as des questions sur ce code n'hésites pas
sinon,
tu peut avec PDF creator et en bidouyant un peu mais c'est hard !
llaurent
17-12-2005 - 4:32
Bonjour,
pour la transformation d'état en pdf, essaie ce slien :
http://cafeine.developpez.com/access/tutoriel/pdf/