-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "\ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:41bf01c4a018$42506200$a301280a@phx.gbl...
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "ORDINO@com", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "\ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:41bf01c4a018$42506200$a301280a@phx.gbl...
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "ORDINO@com", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "\ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:41bf01c4a018$42506200$a301280a@phx.gbl...
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "ORDINO@com", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message de
news:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
-----Message d'origine-----
Bonjour,
As tu coché dans tes réferences (dans un module menu
Outils...Réferences) la
réference CDO ? (Microsoft CDO.....)
Arnaud
a écrit dans le
message de
news:16ac01c4a0a8$caae0a90$
1-J'ai "imprimé" mon état avec PDFCREATOR dans "p:mes
documentsImpression Bon d'achat.pdf"
2- envoie du fichier par:
Sub courriel()
Dim Message As New CDO.Message
With Message 'Envoi du message
.To = "" 'Destinataire
.Subject = "PO:" & Forms![Commande]!
[PO] '"Booklets sending list"
.TextBody = "Test courriel fichier pdf" 'corps
.AddAttachment ("p:mes documentsImpression Bon
d'achat.pdf") '(Nom du Fichier)
.Send
End With
Set Message = Nothing
End Sub
3-Dès la première ligne je reçois le message:
"Type défini par l'utilisateur non défini"
4-Bibliotheque manquante? Si oui laquelle?
5-CDO ????-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdfdans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentantpuis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mailavec une adresse extraite d'une table, une adresse de
copie définie lors del'appel de la fonction et le fichier PDF en fichier
attaché.J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de lafonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
StringDim corps As String, NomFichier As String, email As
StringDestinataire = DLookup
("[emailReprésentant]", "Représentants","[Représentant] = '" & Représentant & "'") 'Extraction
du nom dureprésentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début del'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin del'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envoisbrochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression
de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle devérification de l'existance du fichier créé par
PDFCREATORIf fso.FileExists("C:Documents and
SettingsJMMesdocumentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMesdocumentsBooklet-sent.pdf")
Do 'Boucle pourattendre que le fichier soit terminé d'être créé (sa
taille gonfle durantplusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Doboucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avantl'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ougonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durantl'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et lerapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier dePDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement dufichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message denews:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
.
-----Message d'origine-----
Bonjour,
As tu coché dans tes réferences (dans un module menu
Outils...Réferences) la
réference CDO ? (Microsoft CDO.....)
Arnaud
<anonymous@discussions.microsoft.com> a écrit dans le
message de
news:16ac01c4a0a8$caae0a90$a601280a@phx.gbl...
1-J'ai "imprimé" mon état avec PDFCREATOR dans "p:mes
documentsImpression Bon d'achat.pdf"
2- envoie du fichier par:
Sub courriel()
Dim Message As New CDO.Message
With Message 'Envoi du message
.To = "ordino@abc.com" 'Destinataire
.Subject = "PO:" & Forms![Commande]!
[PO] '"Booklets sending list"
.TextBody = "Test courriel fichier pdf" 'corps
.AddAttachment ("p:mes documentsImpression Bon
d'achat.pdf") '(Nom du Fichier)
.Send
End With
Set Message = Nothing
End Sub
3-Dès la première ligne je reçois le message:
"Type défini par l'utilisateur non défini"
4-Bibliotheque manquante? Si oui laquelle?
5-CDO ????
-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdf
dans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentant
puis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mail
avec une adresse extraite d'une table, une adresse de
copie définie lors de
l'appel de la fonction et le fichier PDF en fichier
attaché.
J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).
Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de la
fonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)
On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
String
Dim corps As String, NomFichier As String, email As
String
Destinataire = DLookup
("[emailReprésentant]", "Représentants",
"[Représentant] = '" & Représentant & "'") 'Extraction
du nom du
représentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début de
l'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin de
l'état
NomFichier = "\ServerSERVEUR(C)Mes
documentsRapports envois
brochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin
& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression
de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle de
vérification de l'existance du fichier créé par
PDFCREATOR
If fso.FileExists("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMes
documentsBooklet-sent.pdf")
Do 'Boucle pour
attendre que le fichier soit terminé d'être créé (sa
taille gonfle durant
plusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Do
boucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avant
l'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ou
gonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durant
l'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et le
rapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")
DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier de
PDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement du
fichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &
Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,
"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message
.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &
"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"
DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:41bf01c4a018$42506200$a301280a@phx.gbl...
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "ORDINO@com", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
.
-----Message d'origine-----
Bonjour,
As tu coché dans tes réferences (dans un module menu
Outils...Réferences) la
réference CDO ? (Microsoft CDO.....)
Arnaud
a écrit dans le
message de
news:16ac01c4a0a8$caae0a90$
1-J'ai "imprimé" mon état avec PDFCREATOR dans "p:mes
documentsImpression Bon d'achat.pdf"
2- envoie du fichier par:
Sub courriel()
Dim Message As New CDO.Message
With Message 'Envoi du message
.To = "" 'Destinataire
.Subject = "PO:" & Forms![Commande]!
[PO] '"Booklets sending list"
.TextBody = "Test courriel fichier pdf" 'corps
.AddAttachment ("p:mes documentsImpression Bon
d'achat.pdf") '(Nom du Fichier)
.Send
End With
Set Message = Nothing
End Sub
3-Dès la première ligne je reçois le message:
"Type défini par l'utilisateur non défini"
4-Bibliotheque manquante? Si oui laquelle?
5-CDO ????-----Message d'origine-----
J'utilise aussi PDFCREATOR pour créer un fichier appelé
Booklents-sent.pdfdans mes documents.
Ensuite je le copie sur le serveur dans un directory au
nom du représentantpuis je détruit le fichier de PDFCREATOR avant d'envoyer
le tout par e-mailavec une adresse extraite d'une table, une adresse de
copie définie lors del'appel de la fonction et le fichier PDF en fichier
attaché.J'ai écris cette fonction et elle fonctionne bien (chez
moi en tout cas).Je t'ai mis des notes pour t'expliquer ce qu'il se passe
au fil de lafonction.
Option Compare Database
Private Declare Sub Sleep Lib "kernel32" (ByVal
dwMilliseconds As Long)
Function envoi_email(Représentant As String, Optional Cc
As String)On Error GoTo Err_fonction
Dim Message As New CDO.Message, Destinataire As
StringDim corps As String, NomFichier As String, email As
StringDestinataire = DLookup
("[emailReprésentant]", "Représentants","[Représentant] = '" & Représentant & "'") 'Extraction
du nom dureprésentant dans la table des représentants
Debut = Format(DateDebut, "yyyy-mm-
dd") 'Date du début del'état
Fin = Format(DateFin, "yyyy-mm-
dd") 'Date de fin del'état
NomFichier = "ServerSERVEUR(C)Mes
documentsRapports envoisbrochures" & Représentant & "BelisleBookletsSentFrom"
& Debut & "To" & Fin& ".pdf" 'Chemin et nom final du fichier pdf
DoCmd.PrintOut 'Impression
de
l'état sous un nom et un chemin constants
boucle = 0
Size = 0
Set fso = CreateObject
("Scripting.FileSystemObject")
Do 'Boucle devérification de l'existance du fichier créé par
PDFCREATORIf fso.FileExists("C:Documents and
SettingsJMMesdocumentsBooklet-sent.pdf") Then Exit Do
Loop
Set f = fso.GetFile("C:Documents and
SettingsJMMesdocumentsBooklet-sent.pdf")
Do 'Boucle pourattendre que le fichier soit terminé d'être créé (sa
taille gonfle durantplusieurs secondes)
Sleep (1000)
If (f.Size > 0 And Size = f.Size) Then
Exit Doboucle = boucle + 1
Size = f.Size
If boucle > 20
Then 'Durée limite avantl'envoi d'un message d'erreur. Ici si le fichier reste à
une taille nulle ougonfle pendant 20 secondes
alerte = MsgBox("Un problème est
survenu durantl'établissement du fichier pdf." & Chr(10) _
& Chr(13) & " La procédure va être
interrompue et lerapport NE sera PAS envoyé.", vbCritical, "Erreur de
procédure")DoEvents
GoTo Exit_fonction
End If
Loop
f.Copy
NomFichier 'Copie du fichier dePDFCREATOR à sa place définitive
DoEvents
f.Delete
Force 'Effacement dufichier de PDFCREATOR
corps = "Attached is the list of the
booklets sent from " &Format(DateDebut, "mm/dd/yyyy") & " until " & Format
(DateFin,"mm/dd/yyyy") & vbCrLf & vbCrLf
corps = corps & "Jean-Marc"
With
Message 'Envoi du message.To = Destinataire
.Cc = Cc
.Subject = "Booklets sending list"
.TextBody = corps
.AddAttachment (NomFichier)
.Send
End With
Set Message = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Représentants " & _
"SET Représentants.[Date dernier
rapport] = '" & DateFin &"'" & _
"WHERE Représentants.Représentant = '" &
Représentant & "';"DoCmd.SetWarnings True
Exit_fonction:
Exit Function
Err_fonction:
MsgBox Err.Description
Resume Exit_fonction
fonction_Close:
Cancel = -1
Exit Function
End Function
Bonne journée,
Jean-Marc
"ORDINO" a écrit
dans le message denews:41bf01c4a018$42506200$
Quand j'utilise
DoCmd.SendObject acSendReport, "Bon
d'achat","HTML" , "", , , "VOTRE PO", "Test
courriel html"
J'envoi par courriel mon rapport (ATTACHÉ) "Bon d'achat"
en format HTML à ORDINO SUJET="VOTRE PO" ET "Test
courriel html" COMME MESSAGE
Ça fonctionne sauf que les lignes sont perdus.
Avec PDFCREATOR je peux enrégistrer mon rapport dans un
fichier .PDF.
Alors comment envoyer un fichier comme attaché avec VBA
en passant les paramètres comme SendObject le fait.
.
.