Problème erreur 287

Trifon -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

Tout d'abord je tiens à vous dire que je suis débutant et merci d'excuser certaines questions qui vont probablement vous paraitre idiotes.

J'ai créer un petit programme avec Excel 2003 qui contient plusieurs macro dont l'une d'elle consiste à envoyer une feuille de commande par mail.

<ital>Sub envoiMedivenPlageCellules()
ActiveSheet.Range("A1:J40").Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "bonjour , ci joint les données de la commande de Charleroi"

.Item.To = "toto@xxx.be"
.Item.Subject = "commande Charleroi"
.Item.Send
End With
End Sub

Tout ce passait très bien jusqu'au moment ou j'ai protégé ma feuille excell pour eviter que mes collègues n'effacent accidentellement des cellules qu'ils ne doivent pas toucher.
J'obtient alors l'erreur d'exécution 287.
Et là je cale !!!

3 réponses

lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour,
Au début de la macro tu dois mettre Unprotect et en fin Protect.
Voir ces deux commandes dans l'aide.
A+
0
Trifon
 
merci pour ton aide !
j'ai essayé ceci mais ca cale encore

Sub envoiMedivenPlageCellules()
ActiveWorkbook.Unprotect
ActiveSheet.Range("A1:J40").Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "bonjour , ci joint les données de la commande de Charleroi"
.Item.To = "Philippe.Troisfontaines@mc.be"
.Item.Subject = "commande Charleroi"
.Item.Send
End With
ActiveWorkbook.Protect
End Sub
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
C'est pas le classeur que tu dois libérer mais la feuille.
    Sheets("Feuil1").Unprotect
   ....
    Sheets("Feuil1").Protect

0
Trifon
 
rebonjour, alors voilà j'ai fait les changement dont tu me parles mais maintenant je rçois le message suivant "erreur de compilation Sub ou function non définie"

Sub envoiMedivenPlageCellules()
ActiveWorkSheet("Mediven").Unprotect
ActiveSheet.Range("A1:J40").Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "bonjour , ci joint les données de la commande de Charleroi"
.Item.To = "toto@xxx.be"
.Item.Subject = "commande Charleroi"
.Item.Send
End With
ActiveWorkSheet("Mediven").Protect
End Sub

merci encore de ton aide
0
Trifon
 
Trifon - 7 jui 2010 à 10:57
rebonjour, alors voilà j'ai fait les changement dont tu me parles mais maintenant je rçois le message suivant "erreur de compilation Sub ou function non définie"

Sub envoiMedivenPlageCellules()
ActiveWorkSheet("Mediven").Unprotect
ActiveSheet.Range("A1:J40").Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "bonjour , ci joint les données de la commande de Charleroi"
.Item.To = "toto@xxx.be"
.Item.Subject = "commande Charleroi"
.Item.Send
End With
ActiveWorkSheet("Mediven").Protect
End Sub

merci encore de ton aide
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
:)..
Tu fais des noeuds..
ActiveWorkSheet("Mediven").Unprotect ??


Plutôt...
ActiveSheet.Unprotect ' si tu a mis un code faut l'ajouter 
'Ou bien... 
Sheets("Mediven").Unprotect

Et si tu a encore une erreur dis où et la quelle, ça m'éviteras de devoir deviner.

L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
0