[vba excel] interdire l'insertion des colonne

Fermé
chercheur92 Messages postés 28 Date d'inscription jeudi 20 juillet 2006 Statut Membre Dernière intervention 29 octobre 2006 - 31 juil. 2006 à 17:56
Laurent08 Messages postés 2 Date d'inscription mardi 22 mai 2007 Statut Membre Dernière intervention 22 mai 2007 - 22 mai 2007 à 12:31
Bonjour !
je travaille sur un projet en vba et je dois insérer des formules dans une feuille. j'ai inséré mes formules de telle sorte que si l'utilisateur insere des lignes mes formules seront toujours bonnes par contre s'il insere des colonnes c'est tout faux. est ce que c'est possible, par vba, d'interdire à l'utilisateur d'insérer des colonnes sur une feuillle ?
je compte sur votre aide.
merci d'avance
A voir également:

3 réponses

JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 858
1 août 2006 à 01:42
Bonsoir,

regarde du côté de la protection de ta feuille.
tu verras que tu peux (sous excel 2003 en tout cas) interdire certaines opérations dont l'insertion de colonnes.

cordialement
0
shattered_faith Messages postés 12 Date d'inscription lundi 5 février 2007 Statut Membre Dernière intervention 12 septembre 2007 13
14 mai 2007 à 11:06
Bonjour à tous,

en fait mon problème est lié au précedent mais un tantinet plus complexe : en fait je voudrais moi aussi interdire l´insertion de lignes sur ma feuille excel, chose accessible depuis les options de protection. Mais je voudrais qu´il soit tout de même possible d´ajouter des lignes par le biais d´un bouton que j´ai créé au préalable (contenat la fonction Selection.EntireRow.Insert)...

Or, si j´interdit la création de lignes, mon bouton ne fonctionne évidemment plus ! Y´a t´il donc une commande permettant de réactiver temporairement la création de ligne (et de la réactiver par la suite) ??? Pour info, je voudrai qu´il ne soit possible d´ajouter une ligne que sous certaines conditions (notamment le fait que certaines cellules doivent être remplies (je me sers pour ca de la fonction Range("MaCellule").Value = InputBox("Entrer la valeur") dans le script du bouton)

Merci par avance.
0
shattered_faith Messages postés 12 Date d'inscription lundi 5 février 2007 Statut Membre Dernière intervention 12 septembre 2007 13
22 mai 2007 à 11:08
Voilà pour ceux que ca interesse j´ai trouvé la fonction qui permet d´activer/desactiver l´insertion des lignes :

Pour interdire :
ActiveSheet.Protect AllowInsertingRows:=False

Pour deactiver la protection :
ActiveSheet.Unprotect


Mais cela ne fait que repousser le problème : dans ce cas, l´utilisateur ne peux plus modifier les cellules de la feuille à cause de la protection... Y´a t´il une solution (pour interdire uniquement l´insertion et autoriser la modification de la valeur des cellules) ?

Repondez SVP... Merci d´avance...
0
Laurent08 Messages postés 2 Date d'inscription mardi 22 mai 2007 Statut Membre Dernière intervention 22 mai 2007
22 mai 2007 à 12:31
Salut,

Va faire un tour dans Outlis, Protection, Permettre aux utilisateurs de modifier des plages...
Ca devrait répondre à ta question. Et si tu veux connaitre le code VBA associé, tu fais outils, macro, nouvelle macro, tu enregistres tes actions, puis tu vas dans l'éditeur VBA, dans un module tu trouveras la macro que tu viens d'enregistrer, il ne te reste plus qu'à l'adapter !!

Au boulot !!

Laurent
0