A mettre en dessous (après le "End Sub") de ta macro "EnvoiMailCDO" :
Sub Execution()
Application.DisplayAlerts = False
For each cel in Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
If cel like "alerte" then
Call EnvoiMailCDO 'Enlève ActiveWorkbook.close de ta macro "EnvoiMailCDO"
End if
Next cel
ActiveWorkbook.save
ActiveWorkbook.close
end sub
De plus, dans le code de "ThisWorkbook" la ou il y a toute tes feuilles sur la page VBA tu mets :
Private Sub Workbook_Open()
Call Module1.Execution 'Si la macro execution se trouve dans la procédure Module1
End Sub