Code qui ne s'exécute pas pour un utilisateur
Re-bonjour à tous,
J'ai un problème avec un code d'envoi de mail automatique par vba qui s'exécute pour tous les utilisateurs du fichier Excel sauf un.
Il a pourtant la même version d'excel que les autres et les mêmes paramètres de sécurité des macros. Elles sont bien activées et on peut voir le code de son poste et pourtant impossible qu'il s'active...!
J'ai essayé toutes les combinaisons de sécurité de macro possibles mais rien à faire, la macro ne s'active pas sur son poste (alors que sur d'autres fichiers Excel, les macros s'activent automatiquement sur son poste).
Il ne s'agit pas seulement de l'envoi de l'email mais également de la boîte message qui est censée apparaître lorsqu'il modifie une cellule.
(Pour info voici le code (même si je ne pense pas que le problème vienne du code puisqu'il fonctionne pour les 8 autres utilisateurs...) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Adresse As String, olApp As Object, M As Object
If Target.Column = 8 And Target.Row > 1 And Cells(Target.Row, 19) <> "" Then
'Ajout d'un message après le changement de date'
MsgBox "Vous avez modifié la date de rendu Commerce." & vbCrLf & "Un mail a été envoyé au Dirigeant Conception.", vbOKOnly + vbInformation, "Changement de date rendu Commerce"
'Envoi d'un mail pour prévenir le dirigeant conception'
Adresse = "xxxxxx@xxxxx;" & _
"xxxxxxxxxx@xxxxxxxx;"
Set olApp = CreateObject("Outlook.Application")
Set M = olApp.CreateItem(olMailItem)
With M
.To = Adresse
.CC = "xxxxxxxxxxx@xxxxxxx"
.Subject = "Fichier Suivi des Etudes - Modification date de rendu Commerce"
.Body = "Bonjour," & vbCrLf & "La date de rendu Commerce (cellule : " & Target.Address(0, 0) & ") correspondant à l'étude " & Target.Offset(0, -6) & " du client " & Target.Offset(0, -3) & " a été modifiée." & vbCrLf & "Merci de modifier la date de réponse correspondante." & vbCrLf & "Cordialement"
.Send
End With
End If
End SubMerci pour votre aide.
Bonsoir,
Peut-être que la référence VBA Project Microsoft Outlook object library n'est pas active?
Je lui ai demandé de vérifier mais il ne s'agit pas seulement du mail (ouverture d'outlook) mais aussi la msg box qui est censée apparaître dès qu'il modifie une cellule (début du code) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Adresse As String, olApp As Object, M As Object
If Target.Column = 8 And Target.Row > 1 And Cells(Target.Row, 19) <> "" Then
MsgBox "Vous avez modifié la date de rendu Commerce." & vbCrLf & "Un mail a été envoyé au Dirigeant Conception.", vbOKOnly + vbInformation, "Changement de date rendu Commerce"