)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername")
= "ton "
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword")
= "motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") =
_
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername")
= "ton adresse@tonfai"
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword")
= "motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") =
_
"dcolardelle@free.fr"
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton adresse@tonfai"
.Update
End With
Daniel
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername")
= "ton "
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword")
= "motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") =
_
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée.
en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton "
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel
> )bonjour,
> sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
> CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
> légèrement modifié pour que le destinataire porte un commentaire et en
> cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
> en l'envoyant sur outlook ça marche
> en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
> génère ce message:
>
> microsoft visual basic
> erreur d'execution '--2147220960 (80040220)':
> la valeur de configuration "SendUsing" est non valide.
>
> l'extrait de code concerné:
> .TextBody = "bonjour"
> .AddAttachment TempFilePath & TempFileName & FileExtStr
> .Send
> .Subject = "retour fiche appréciation " & [C14].Value
>
> Y en a t-y qui verrait si ça vient de l'application messagerie?
> Merci
>
> gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton adresse@tonfai"
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
"dcolardelle@free.fr"
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton adresse@tonfai"
.Update
End With
Daniel
> )bonjour,
> sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
> CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
> légèrement modifié pour que le destinataire porte un commentaire et en
> cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
> en l'envoyant sur outlook ça marche
> en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
> génère ce message:
>
> microsoft visual basic
> erreur d'execution '--2147220960 (80040220)':
> la valeur de configuration "SendUsing" est non valide.
>
> l'extrait de code concerné:
> .TextBody = "bonjour"
> .AddAttachment TempFilePath & TempFileName & FileExtStr
> .Send
> .Subject = "retour fiche appréciation " & [C14].Value
>
> Y en a t-y qui verrait si ça vient de l'application messagerie?
> Merci
>
> gilles72
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton "
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel
> )bonjour,
> sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
> CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
> légèrement modifié pour que le destinataire porte un commentaire et en
> cliquant sur un bouton, renvoit directement à l'emetteur la feuille modifiée.
> en l'envoyant sur outlook ça marche
> en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
> génère ce message:
>
> microsoft visual basic
> erreur d'execution '--2147220960 (80040220)':
> la valeur de configuration "SendUsing" est non valide.
>
> l'extrait de code concerné:
> .TextBody = "bonjour"
> .AddAttachment TempFilePath & TempFileName & FileExtStr
> .Send
> .Subject = "retour fiche appréciation " & [C14].Value
>
> Y en a t-y qui verrait si ça vient de l'application messagerie?
> Merci
>
> gilles72
Bonjour Daniel
merci de ta réponse, qui, hélas ne va sans doute pas me servir; je
t'explique pourquoi:
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients.
C'est un fichier qu'une collègue envoit (outlook2007) à des clients pour
mesurer leur appréciation après travaux.
elle l'envoit depuis un bouton qui actionne le code de Ron de Bruin
sur cette feuille, il y a un autre bouton qui permet au client de retouner
directement à ma collègue la feuille qu'il a complétée avant.
Pour ça, j'ai fait une copie du code , et avec l'aide d'Isabelle et
Michdenis, je l'ai placé dans une private sub qui retourne le fichier à ma
collègue
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients
Il y a très peu de chance que ce soit GMAIL, mais pas de pot, en faisant les
tests avec des stagiaires je m'aperçois qu' avec GMAIL, ça coince
Merci donc de ton aide, mais je ne peux pas rentrer les coordonnées que je
ne connais pas
ci-dessous le code
MERCI encore
Private Sub CommandButton2_Click()
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim iMsg As Object
Dim iConf As Object
Dim ws As Worksheet
' Dim Flds As Variant
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
'Or if you want to copy more then one sheet use:
'Sourcewb.Sheets(Array("Sheet1", "Sheet3")).Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) < 12 Then
'You use Excel 97-2003
FileExtStr = ".xls": FileFormatNum = -4143
Else
'You use Excel 2007
'We exit the sub when your answer is NO in the security dialog
that you only
'see when you copy a sheet from a xlsm file with macro's
disabled.
If Sourcewb.Name = .Name Then
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
MsgBox "Your answer is NO in the security dialog"
Exit Sub
Else
Select Case Sourcewb.FileFormat
Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
Case 52:
If .HasVBProject Then
FileExtStr = ".xlsm": FileFormatNum = 52
Else
FileExtStr = ".xlsx": FileFormatNum = 51
End If
Case 56: FileExtStr = ".xls": FileFormatNum = 56
Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
End Select
End If
End If
End With
' 'Change all cells in Destwb to values if you want
' For Each sh In Destwb.Worksheets
' sh.Select
' With sh.UsedRange
' .Cells.Copy
' .Cells.PasteSpecial xlPasteValues
' .Cells(1).Select
' End With
' Application.CutCopyMode = False
' Next sh
' Destwb.Worksheets(1).Select
'Save the new workbook/Mail it/Delete it
TempFilePath = Environ$("temp") & ""
TempFileName = "RETOUR de " & Sourcewb.Name & " " & Format(Now,
"dd-mmm-yy h-mm-ss")
With Destwb
.SaveAs TempFilePath & TempFileName & FileExtStr,
FileFormat:=FileFormatNum
.Close savechanges:úlse
End With
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
' iConf.Load -1 ' CDO Source Defaults
' Set Flds = iConf.Fields
' With Flds
'
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "Fill in
your SMTP server here"
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
' .Update
' End With
'Set ws = activeWorksheet
With iMsg
Set .Configuration = iConf
' .To = ""
'.To = ""
.To = Range("h17").Value
.CC = ""
.BCC = ""
'.From = """LEROY Gilles"""
' .Subject = "This is a test"
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value ' ça colle
' .HTMLBody = RangetoHTML(rng)
' .Send
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
"Daniel.C" a écrit :Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton "
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée. en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Bonjour Daniel
merci de ta réponse, qui, hélas ne va sans doute pas me servir; je
t'explique pourquoi:
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients.
C'est un fichier qu'une collègue envoit (outlook2007) à des clients pour
mesurer leur appréciation après travaux.
elle l'envoit depuis un bouton qui actionne le code de Ron de Bruin
sur cette feuille, il y a un autre bouton qui permet au client de retouner
directement à ma collègue la feuille qu'il a complétée avant.
Pour ça, j'ai fait une copie du code , et avec l'aide d'Isabelle et
Michdenis, je l'ai placé dans une private sub qui retourne le fichier à ma
collègue
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients
Il y a très peu de chance que ce soit GMAIL, mais pas de pot, en faisant les
tests avec des stagiaires je m'aperçois qu' avec GMAIL, ça coince
Merci donc de ton aide, mais je ne peux pas rentrer les coordonnées que je
ne connais pas
ci-dessous le code
MERCI encore
Private Sub CommandButton2_Click()
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim iMsg As Object
Dim iConf As Object
Dim ws As Worksheet
' Dim Flds As Variant
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
'Or if you want to copy more then one sheet use:
'Sourcewb.Sheets(Array("Sheet1", "Sheet3")).Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) < 12 Then
'You use Excel 97-2003
FileExtStr = ".xls": FileFormatNum = -4143
Else
'You use Excel 2007
'We exit the sub when your answer is NO in the security dialog
that you only
'see when you copy a sheet from a xlsm file with macro's
disabled.
If Sourcewb.Name = .Name Then
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
MsgBox "Your answer is NO in the security dialog"
Exit Sub
Else
Select Case Sourcewb.FileFormat
Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
Case 52:
If .HasVBProject Then
FileExtStr = ".xlsm": FileFormatNum = 52
Else
FileExtStr = ".xlsx": FileFormatNum = 51
End If
Case 56: FileExtStr = ".xls": FileFormatNum = 56
Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
End Select
End If
End If
End With
' 'Change all cells in Destwb to values if you want
' For Each sh In Destwb.Worksheets
' sh.Select
' With sh.UsedRange
' .Cells.Copy
' .Cells.PasteSpecial xlPasteValues
' .Cells(1).Select
' End With
' Application.CutCopyMode = False
' Next sh
' Destwb.Worksheets(1).Select
'Save the new workbook/Mail it/Delete it
TempFilePath = Environ$("temp") & ""
TempFileName = "RETOUR de " & Sourcewb.Name & " " & Format(Now,
"dd-mmm-yy h-mm-ss")
With Destwb
.SaveAs TempFilePath & TempFileName & FileExtStr,
FileFormat:=FileFormatNum
.Close savechanges:úlse
End With
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
' iConf.Load -1 ' CDO Source Defaults
' Set Flds = iConf.Fields
' With Flds
'
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "Fill in
your SMTP server here"
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
' .Update
' End With
'Set ws = activeWorksheet
With iMsg
Set .Configuration = iConf
' .To = "ron@debruin.nl"
'.To = "gleroy@g-t.fr"
.To = Range("h17").Value
.CC = ""
.BCC = ""
'.From = """LEROY Gilles""<gleroy@g-t.fr>"
' .Subject = "This is a test"
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value ' ça colle
' .HTMLBody = RangetoHTML(rng)
' .Send
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
"Daniel.C" a écrit :
Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton adresse@tonfai"
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
"dcolardelle@free.fr"
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton adresse@tonfai"
.Update
End With
Daniel
)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée. en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72
Bonjour Daniel
merci de ta réponse, qui, hélas ne va sans doute pas me servir; je
t'explique pourquoi:
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients.
C'est un fichier qu'une collègue envoit (outlook2007) à des clients pour
mesurer leur appréciation après travaux.
elle l'envoit depuis un bouton qui actionne le code de Ron de Bruin
sur cette feuille, il y a un autre bouton qui permet au client de retouner
directement à ma collègue la feuille qu'il a complétée avant.
Pour ça, j'ai fait une copie du code , et avec l'aide d'Isabelle et
Michdenis, je l'ai placé dans une private sub qui retourne le fichier à ma
collègue
LE PROBLEME:
je ne sais pas de quelles applic de messagerie disposent les clients
Il y a très peu de chance que ce soit GMAIL, mais pas de pot, en faisant les
tests avec des stagiaires je m'aperçois qu' avec GMAIL, ça coince
Merci donc de ton aide, mais je ne peux pas rentrer les coordonnées que je
ne connais pas
ci-dessous le code
MERCI encore
Private Sub CommandButton2_Click()
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim iMsg As Object
Dim iConf As Object
Dim ws As Worksheet
' Dim Flds As Variant
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
'Or if you want to copy more then one sheet use:
'Sourcewb.Sheets(Array("Sheet1", "Sheet3")).Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) < 12 Then
'You use Excel 97-2003
FileExtStr = ".xls": FileFormatNum = -4143
Else
'You use Excel 2007
'We exit the sub when your answer is NO in the security dialog
that you only
'see when you copy a sheet from a xlsm file with macro's
disabled.
If Sourcewb.Name = .Name Then
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
MsgBox "Your answer is NO in the security dialog"
Exit Sub
Else
Select Case Sourcewb.FileFormat
Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
Case 52:
If .HasVBProject Then
FileExtStr = ".xlsm": FileFormatNum = 52
Else
FileExtStr = ".xlsx": FileFormatNum = 51
End If
Case 56: FileExtStr = ".xls": FileFormatNum = 56
Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
End Select
End If
End If
End With
' 'Change all cells in Destwb to values if you want
' For Each sh In Destwb.Worksheets
' sh.Select
' With sh.UsedRange
' .Cells.Copy
' .Cells.PasteSpecial xlPasteValues
' .Cells(1).Select
' End With
' Application.CutCopyMode = False
' Next sh
' Destwb.Worksheets(1).Select
'Save the new workbook/Mail it/Delete it
TempFilePath = Environ$("temp") & ""
TempFileName = "RETOUR de " & Sourcewb.Name & " " & Format(Now,
"dd-mmm-yy h-mm-ss")
With Destwb
.SaveAs TempFilePath & TempFileName & FileExtStr,
FileFormat:=FileFormatNum
.Close savechanges:úlse
End With
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
' iConf.Load -1 ' CDO Source Defaults
' Set Flds = iConf.Fields
' With Flds
'
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "Fill in
your SMTP server here"
'
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
' .Update
' End With
'Set ws = activeWorksheet
With iMsg
Set .Configuration = iConf
' .To = ""
'.To = ""
.To = Range("h17").Value
.CC = ""
.BCC = ""
'.From = """LEROY Gilles"""
' .Subject = "This is a test"
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value ' ça colle
' .HTMLBody = RangetoHTML(rng)
' .Send
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
"Daniel.C" a écrit :Mais en fouillant un peu sur internet, ça voudrait dire que tu n'as pas
configuré ton serveur SMTP (nom et mot de passe)
Il faudrait ajouter :
With Flds
..Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.free.fr"
..Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
..Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")
= 1
..Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =
"ton "
..Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =
"motdepasse"
'avis de lecture
iConf.Fields("urn:schemas:mailheader:disposition-notification-to") = _
""
iConf.Fields("urn:schemas:mailheader:return-receipt-to") = _
"ton "
.Update
End With
Daniel)bonjour,
sur une feuille, un code (par CDO, issu de Ron de BRUIN , fichier:
CDO_Example_Code.xls) qui envoit une feuille par mail, et le même code
légèrement modifié pour que le destinataire porte un commentaire et en
cliquant sur un bouton, renvoit directement à l'emetteur la feuille
modifiée. en l'envoyant sur outlook ça marche
en l'envoyant sur une boite GMAIL le fait de cliquer sur le bouton retour
génère ce message:
microsoft visual basic
erreur d'execution '--2147220960 (80040220)':
la valeur de configuration "SendUsing" est non valide.
l'extrait de code concerné:
.TextBody = "bonjour"
.AddAttachment TempFilePath & TempFileName & FileExtStr
.Send
.Subject = "retour fiche appréciation " & [C14].Value
Y en a t-y qui verrait si ça vient de l'application messagerie?
Merci
gilles72