En recherchant dans les archives, j'ai trouvé une procédure postée par
Benead, à mettre dans le ThisWorkBook de mon fichier pour empêcher la
suppression de lignes, et je n'arrive pas à la modifier pour aussi empêcher
leur insertion.
Je me doute qu'il ne doit pas y avoir beaucoup à changer, mais ça beugue à
chaque fois.
Application.CommandBars(1).Controls("Edition").Controls("Supprimer...").Enabled = True
Application.OnKey "^{-}"
Application.OnKey "^{109}"
End Sub
Et est-ce possible de la modifier de façon à ce qu'elle n'empêche
l'insertion et la suppression uniquement pour le fichier dans lequel elle est
insérée? (car là, tant que mon fichier est ouvert, elle me bloque aussi les
autres).
Merci beaucoup!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l''année pour m''écrire.../
Moi aussi, je viens à l'instant de retélécharger ton fichier, je l'ouvre, active les macros, et lorsque je fais un clic droit sur une ligne, j'ai toujours "insertion".
Mais en plus, lorsque je quitte Excel, j'ai une erreur d'exécution 5 (à la 2ème ligne de la macrop pour rétablir "supprimer"), je ferme le débogueur, et lorsque je ré-ouvre excel, ma commande "supprimer" est toujours figée; je suis obligé d'aller supprimer le fichier "Excel11.xlb" dans "C:Documents and SettingsuserApplication DataMicrosoftExcelExcel11.xlb" pour pouvoir re-récupérer cette fonction.
Comment se fait-il que cette macro fonctionne sur ton poste, et pas sur le mien? Quelqu'un d'autre peut-il essayer?
Merci!
-- géjoun
/Enlever l'année pour m''écrire.../
Je viens de tester à nouveau:
http://cjoint.com/?dDrrMm1XCz
Private Sub Workbook_Activate() EmpecheSup End Sub
Private Sub Workbook_Deactivate() RetablitSup End Sub
Sub EmpecheSup() Application.CommandBars("Row").Controls("Supprimer...").Enabled > False Application.CommandBars("Cell").Controls("Supprimer...").Enabled > False
Application.CommandBars(1).Controls("Edition").Controls("Supprimer...").Enabled = True Application.OnKey "^{-}" Application.OnKey "^{109}" End Sub
JB
Moi aussi, je viens à l'instant de retélécharger ton fichier, je l'ouvre,
active les macros, et lorsque je fais un clic droit sur une ligne, j'ai
toujours "insertion".
Mais en plus, lorsque je quitte Excel, j'ai une erreur d'exécution 5 (à la
2ème ligne de la macrop pour rétablir "supprimer"), je ferme le débogueur, et
lorsque je ré-ouvre excel, ma commande "supprimer" est toujours figée; je
suis obligé d'aller supprimer le fichier "Excel11.xlb" dans "C:Documents and
SettingsuserApplication DataMicrosoftExcelExcel11.xlb" pour pouvoir
re-récupérer cette fonction.
Comment se fait-il que cette macro fonctionne sur ton poste, et pas sur le
mien?
Quelqu'un d'autre peut-il essayer?
Merci!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l'année pour m''écrire.../
Je viens de tester à nouveau:
http://cjoint.com/?dDrrMm1XCz
Private Sub Workbook_Activate()
EmpecheSup
End Sub
Private Sub Workbook_Deactivate()
RetablitSup
End Sub
Sub EmpecheSup()
Application.CommandBars("Row").Controls("Supprimer...").Enabled > False
Application.CommandBars("Cell").Controls("Supprimer...").Enabled > False
Moi aussi, je viens à l'instant de retélécharger ton fichier, je l'ouvre, active les macros, et lorsque je fais un clic droit sur une ligne, j'ai toujours "insertion".
Mais en plus, lorsque je quitte Excel, j'ai une erreur d'exécution 5 (à la 2ème ligne de la macrop pour rétablir "supprimer"), je ferme le débogueur, et lorsque je ré-ouvre excel, ma commande "supprimer" est toujours figée; je suis obligé d'aller supprimer le fichier "Excel11.xlb" dans "C:Documents and SettingsuserApplication DataMicrosoftExcelExcel11.xlb" pour pouvoir re-récupérer cette fonction.
Comment se fait-il que cette macro fonctionne sur ton poste, et pas sur le mien? Quelqu'un d'autre peut-il essayer?
Merci!
-- géjoun
/Enlever l'année pour m''écrire.../
Je viens de tester à nouveau:
http://cjoint.com/?dDrrMm1XCz
Private Sub Workbook_Activate() EmpecheSup End Sub
Private Sub Workbook_Deactivate() RetablitSup End Sub
Sub EmpecheSup() Application.CommandBars("Row").Controls("Supprimer...").Enabled > False Application.CommandBars("Cell").Controls("Supprimer...").Enabled > False
Ajouter dans EmpecheSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = False
Ajouter dans RetablitSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = True
JB
géjoun
Bonjour,
Cette fois-ci, j'y comprend plus rien... Déjà, la commande que tu m'as fourni me provoque une erreur d'exécution à l'ouverture du document lorsque je l'insère dans la macro, mais en plus, maintenant, la macro, même sans rajouter ta ligne de code concernant la commande INSERER ne me défige plus la commande supprimer en sortie, malgré que toutes les valeurs soient à true en sortie. La 1ère fois, ça passe, mais à la 2ème ouverture, la commande "supprimer" est encore grisée, d'où une erreur à l'ouverture lorsque la macro essaie de la passer à "false".
La, j'y comprend plus rien.
il n'existe pas une autre méthode pour arriver au même résultat? (mise à part protéger la feuille?)
Merci!
-- géjoun
/Enlever l''année pour m''écrire.../
Ajouter dans EmpecheSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = False
Ajouter dans RetablitSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = True
JB
Bonjour,
Cette fois-ci, j'y comprend plus rien...
Déjà, la commande que tu m'as fourni me provoque une erreur d'exécution à
l'ouverture du document lorsque je l'insère dans la macro, mais en plus,
maintenant, la macro, même sans rajouter ta ligne de code concernant la
commande INSERER ne me défige plus la commande supprimer en sortie, malgré
que toutes les valeurs soient à true en sortie.
La 1ère fois, ça passe, mais à la 2ème ouverture, la commande "supprimer"
est encore grisée, d'où une erreur à l'ouverture lorsque la macro essaie de
la passer à "false".
La, j'y comprend plus rien.
il n'existe pas une autre méthode pour arriver au même résultat? (mise à
part protéger la feuille?)
Merci!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l''année pour m''écrire.../
Ajouter dans EmpecheSup:
Application.CommandBars("Cell").Controls("Insérer...").Enabled = False
Ajouter dans RetablitSup:
Application.CommandBars("Cell").Controls("Insérer...").Enabled = True
Cette fois-ci, j'y comprend plus rien... Déjà, la commande que tu m'as fourni me provoque une erreur d'exécution à l'ouverture du document lorsque je l'insère dans la macro, mais en plus, maintenant, la macro, même sans rajouter ta ligne de code concernant la commande INSERER ne me défige plus la commande supprimer en sortie, malgré que toutes les valeurs soient à true en sortie. La 1ère fois, ça passe, mais à la 2ème ouverture, la commande "supprimer" est encore grisée, d'où une erreur à l'ouverture lorsque la macro essaie de la passer à "false".
La, j'y comprend plus rien.
il n'existe pas une autre méthode pour arriver au même résultat? (mise à part protéger la feuille?)
Merci!
-- géjoun
/Enlever l''année pour m''écrire.../
Ajouter dans EmpecheSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = False
Ajouter dans RetablitSup: Application.CommandBars("Cell").Controls("Insérer...").Enabled = True
Je reviens toujours avec mon même problème... Le fichier que tu m'as joint ici ne fonctionne pas chez moi (erreur d'exécution 5 sur la 1ère ligne concernant l'insertion), donc, après avoir un peu cherché, je me demande si ça ne peut pas venir de nos versions qui seraient différentes; j'ai Office 2003 en français, et toi?
Merci!
-- géjoun
/Enlever l''année pour m''écrire.../
Sur mon poste, ce pgm fonctionne correctement
http://cjoint.com/?dEvzl7LdRx
JB
Bonjour,
Je reviens toujours avec mon même problème...
Le fichier que tu m'as joint ici ne fonctionne pas chez moi (erreur
d'exécution 5 sur la 1ère ligne concernant l'insertion), donc, après avoir un
peu cherché, je me demande si ça ne peut pas venir de nos versions qui
seraient différentes; j'ai Office 2003 en français, et toi?
Merci!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l''année pour m''écrire.../
Je reviens toujours avec mon même problème... Le fichier que tu m'as joint ici ne fonctionne pas chez moi (erreur d'exécution 5 sur la 1ère ligne concernant l'insertion), donc, après avoir un peu cherché, je me demande si ça ne peut pas venir de nos versions qui seraient différentes; j'ai Office 2003 en français, et toi?