problème sur une fonction d'insertion automatique de ligne

Ifuldrita

XLDnaute Nouveau
Bonjour à tous,

je rencontre le problème suivant en VBA (vous pouvez également regarder la pièce jointe) :

j'ai une macro qui permet, lors de l'ajout d'une ligne (en utilisant par exemple Ctrl+"+"), de recopier automatiquement toutes les formules de la ligne du dessus, et de laisser vides les cellules devant être remplies par des constantes.

Jusque là, tout fonctionne bien.

J'ajoute, sur la troisième feuille, deux boutons : le bouton 2 a pour but de modifier les cellules du nom appelé "Nom", en écrivant "Clic2" dans celles-ci. Ca marche également.

Le bouton 1 a pour objet la suppression des lignes dont les cellules colonne B ont pour valeur "Clic2". Ce bouton marche lorsque qu'il n'y a pas la première macro destinée à copier automatiquement les formules lors d'un ajout de ligne, mais par contre, cette dernière macro gêne l'action du Bouton 1, notamment sur la ligne de commande : "rng.Select".

Tout est beaucoup plus clair dans le fichier joint.
Quelqu'un peut-il m'aider s'il vous plait ?

Merci d'avance
 

Pièces jointes

  • exemple.zip
    27.5 KB · Affichages: 35
  • exemple.zip
    27.5 KB · Affichages: 30
  • exemple.zip
    27.5 KB · Affichages: 33

Robert

XLDnaute Barbatruc
Repose en paix
Re : problème sur une fonction d'insertion automatique de ligne

Bonjour Ifuldrita, bonjour le forum,

En pièce jointe ton fichier modifié. J'ai déclaré dans le module 1 une variable booléenne test. Cette variable prend la valeur True au debut du code de la macro DelNonOption puis se réinitialise à la fin de celle-ci.
En rajoutant dans la procédure événementielle Change de l'onglet la ligne :
Code:
If test = True Then Exit Sub 'sort de la procédure si la variable test est vraie
le clic sur le bouton 1 peut s'effectuer sans engendrer la macro événementielle Change...
 

Pièces jointes

  • Ifuldrita_v01.xls
    92 KB · Affichages: 63

Ifuldrita

XLDnaute Nouveau
Re : problème sur une fonction d'insertion automatique de ligne

Ah en fait, en regardant plus en détail dans le code, j'ai quand même un petit problème, au niveau de la macro Insertline().

En fait ce fichier est juste un fichier exemple, ne pouvant pas publier le vrai fichier qui est bien plus complexe. Dans le vrai fichier, j'ai une pléthore de colonnes à formules, et il est en perpétuel mouvement, si bien que nommer les colonnes par leur référence (exemple : Range("B4").Select) est un vrai problème car les formules ne seront pas toujours au même endroit (et le fichier va pour l'instant de la colonne A à la colonne GE, soit beaucoup de formules !!).

Y at-til un moyen de rendre cette macro plus générique ?

Merci encore
 

Discussions similaires

Statistiques des forums

Discussions
312 393
Messages
2 087 967
Membres
103 688
dernier inscrit
Amadou