1
Est-ce que quelqu'un sait comment supprimer un objet pièce jointe de VBA? J'essaye de faire une application dans Excel en utilisant VBA tel qu'il enverra des email selon les données trouvées sur le dossier d'Excel. Dans mon code ci-dessous, les emails sont envoyés, cependant, le dernier email a toutes les pièces jointes des précédentes. Toute aide serait appréciée.Créer de nouvelles pièces jointes Excel-VBA
Private Sub btnSendEmail_Click()
For Counter = 2 To 3
Dim Mail As New Message
Dim Config As New Configuration
Set Config = Mail.Configuration
Config(cdoSendUsingMethod) = cdoSendUsingPort
Config(cdoSMTPServer) = "smtp.gmail.com"
Config(cdoSMTPServerPort) = 465
Config(cdoSMTPAuthenticate) = cdoBasic
Config(cdoSMTPUseSSL) = True
Config(cdoSendUserName) = "[email protected]"
Config(cdoSendPassword) = "test"
Config.Fields.Update
Set curFirstName = Worksheets("Sheet1").Cells(Counter, 1)
Set curLastName = Worksheets("Sheet1").Cells(Counter, 2)
Set curEmail = Worksheets("Sheet1").Cells(Counter, 3)
Set curAttach = Worksheets("Sheet1").Cells(Counter, 4)
Mail.To = curEmail.Value
Mail.From = Config(cdoSendUserName)
Mail.Subject = "This is a test!"
Mail.HTMLBody = "<h1>" & curFirstName.Value & " " & curLastName.Value & "</h1>"
Mail.AddAttachment curAttach.Value
Mail.Send
Next Counter
MsgBox "Sent"
End Sub
Il me semble que vous utilisez liaison précoce et donc une référence à 'Microsoft Outlook Object xx.0 Library'. Si c'est le cas, vous devriez avoir auto-compléter dans le VBE et devrait être capable de voir les différentes options pour 'Mail.', y compris' Mail.Attachments.Remove'. Si vous utilisez une autre bibliothèque pour une liaison anticipée, veuillez l'inclure dans votre message. – Ralph
@Ralph, j'utilise "Microsoft CDO pour Windows 2000 Library". Dois-je utiliser une autre référence? –
Non, 'CDO' est correct. Juste l'inclure la prochaine fois dans votre message. J'ai changé votre message pour inclure le * drapeau * approprié. Quoi qu'il en soit, avec 'CDO' vous pouvez utiliser la ligne suivante pour supprimer toutes les pièces jointes:' Mail.Attachments.DeleteAll'. – Ralph