Supprimer une ligne faisant référence à une variable

Gexjere

Nouveau membre
Bonjour à tous

Je me présente,je m'appelle Jérémy et j'essaye actuellement de développer une petite macro sous Excel afin réduire une action qui me prend quelques heures par semaine.

Globalement, cette macro vient tester la valeur de la case B2. Si la case est égale à 1 on passe à la cellule du dessous sinon on supprime la ligne, c'est la que mon problème commence.

J'ai fait un enregistrement de macro avec Excel et quand je supprime une ligne il écrie :
Rows("12:12").Select
Selection.Delete Shift:=xlUp

J'ai déclaré une variable qui s'appelle "i" et qui me permet de faire ma boucle for.
En gros si la ligne 3 n'est pas égale à 1 je veux que le Rows("12:12").Select se transforme en Rows("i:i").Select car i aura la valeur 3 (il est incrémenté à chaque fois)

Le problème c'est que je ne sais pas comment passer la valeur de "i" dans cette formule.

Je me mets lentement au VB Excel.

En vous remerciant par avance,

Bien Cordialement
Jeremy
 

oozenot

Expert
Salut Jeremy,

2 choses pour t'aider :
- enleve les ".select ... selection."
- lorsque tu supprime une ligne sous excel, il renomme automatiquement les lignes restantes pour qu'il n'y ait pas "trou". SI tu veux supprimer des lignes selon une valeur que tu teste, commence par la fin puis remonte le tableau... pour ce faire utilise la boucle FOR :
Code:
//on defini 2 valeurs j et k correspondant au debut et a la fin de ton tableau (tu peux aussi mettre les valeurs en dur mais si ton tableau evolue...)
For i = j to k step -1
   IF ... THEN //ta condition
       ... // ton action
   END IF
Next

je te laisse chercher pour la definition des variables j et k ainsi que pour la definition des variables.
Utilise OPTION EXPLICIT au debut de ta feuille VBA. cela t'aidera pour les declaration de variables.

Enfin, cherche sur le forum des sujets concernant les conditions sur les lignes et notamment les miens...

tu as tout pour reussir mtn....

a te lire

++
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 134
Messages
6 718 052
Membres
1 586 393
Dernier membre
mathhh28
Partager cette page
Haut