Cherche erreur macro
Bonjour à tous,
Plus que le résultat, je souhaite comprendre mon erreur...
J’aurai besoin d’un petit coup de main. Je souhaite envoyer un fichier à plusieurs destinataires par Outlook (oui le sujet est classique)
Ci-dessous ma macro. Le problème c’est que j’arrive pas à comprendre où est l’erreur. Le mail ne s'envoie pas. J’ai regardé plusieurs macros semblables pourtant…
Avez-vous une idée ? Je me casse la tête dessus...
Merci à tous !
Sub Macromail()
Dim OutApp As Object
Dim OutMail As Object
Dim Corps_mail As String
Dim cell As Range
Dim Nom_Fichier As String
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
If Nom_Fichier = "Faux" Then Exit Sub
For Each cell In Sheets("Feuil1").Columns("A").Cells.SpecialCells(xlCellTypeConstants)
Next
Corps_mail = "Ca marche !"
On Error Resume Next
With OutMail
.To = cell.Value
.CC = "" 'copie
.BCC = "" 'cacher
.Subject = "test"
.Body = Corps_mail
'.Attachements.Add Nom_Fichier
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
Bonsoir Leogigi
Pour comprendre ou est ton erreur, il te faut passer par le mode débogage pas à pas
Pour ce faire, tu va sur la première ligne de ton code et tu appuies sur F8 pour avancer dans ton code
Tu peux mettre le curseur de la souris sur les variables, pour voir ce qu'elle contiennent
A+
Bonjour,
1) tu as une instruction on error resume next (ce qui signifie que si tu as une erreur dans le programme tu ne la verras pas.
2) tu boucles sur la liste des destinataires mais sans rien en faire et après avoir fait la boucle tu envoies le mail.
voici les corrections que je te propose (non testées cependant)
Sub Macromail()
Dim OutApp As Object
Dim OutMail As Object
Dim Corps_mail As String
Dim cell As Range
Dim Nom_Fichier As String
dim desti as string
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
If Nom_Fichier = "Faux" Then Exit Sub
For Each cell In Sheets("Feuil1").Columns("A").Cells.SpecialCells(xlCellTypeConstants)
desti = desti & cell & ";"
Next
Corps_mail = "Ca marche !"
'On Error Resume Next
With OutMail
.To = desti
.CC = "" 'copie
.BCC = "" 'cacher
.Subject = "test"
.Body = Corps_mail
'.Attachements.Add Nom_Fichier
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End SubBonjour,
Merci h2so4 pour tes explications ! Je comprends mieux maintenant...
Bonne journée,