Macro : effacement d'une seule ligne

  • Initiateur de la discussion Initiateur de la discussion bpierre
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

bpierre

Guest
bonjour,

lorsque la macro ci-jointe s'exécute, plusieurs lignes s'effacent alors que je souhaite en effacer qu'une seule.
A priori, dans l'exemple ci-joint ça fonctionne, mais dans mon cas (le fichier est trop volumineux pour vous le montrer), j'ai 2000 lignes et quand je supprime une croix, j'ai la MsgBox qui apparaît autant de fois que j'aie fait de croix dans la colonne J. Résultat, ça me supprime toutes les lignes qui correspondent à "CIR".
A quel endroit, dans la macro ça coince ? Comment ça se fait ?
merci d'avance
 

Pièces jointes

Re : Macro : effacement d'une seule ligne

Bonjour,

Je n'ai pas trop détaillé ta macro, mais tu peux essayer ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
....
Ton code
....
Application.EnableEvents = True
End Sub
 
Re : Macro : effacement d'une seule ligne

Re,

En fait j'ai modifié un peu ton code avec ce que j'ai compris.
Voir le fichier joint.

Tu veux que lorsque tu entres un "X" la ligne soit copiée dans l'onglet cota
et que lorsque tu enleves le "X" la ligne soit effacée ?

J'ai rajouter une Sub pour que les "X" apparaissent ou disparaissent en double-cliquant dans les cellules.

Quelle ligne veux tu effacer lorsqu'elle existe en plusieurs exemplaire ?
Le code ci-joint supprime une seule ligne mais arbitrairement la derniere trouvée en partant du haut ...
 

Pièces jointes

Dernière édition:
Re : Macro : effacement d'une seule ligne

bonjour,

pourquoi, lorsque je double-clic pour ajouter une croix, ça me rajoute 2 fois la même ligne dans la feuille "cota" ?
Je souhaite n'avoir qu'une seule ligne.
merci pour votre aide
 

Pièces jointes

Re : Macro : effacement d'une seule ligne

Salut bpierre, Catrice, le Forum

Phénomène tout à fait Normal
Une ligne ajoutée lors du Worksheet_BeforeDoubleClick()
Une ligne ajoutée lors du Worksheet_Change()

Ramène les lignes de code du Worksheet_Change() dans le Worksheet_BeforeDoubleClick()

et ça devrai fonctionner

Bonne Journée
 
Re : Macro : effacement d'une seule ligne

Bonjour,

Je ne reproduis pas ce phenomene ?!
Et je ne vois pas pourquoi ça fait ça chez toi.
J'ai fait une modif dans le code que tu peux tester.
Quelle est ta version d'Excel ?

Je n'ai pas bien compris la solution de Dull.
Normalement le double clic met un "X" dans la feuille "Identi". => evenement "BeforeDoubleClick"

L'evenement "Change" agit en cas de changement dans la feuille.
Dans mon cas ajout/suppression d'un "X" au clavier ou par doubleclic
Le "change" ne fait que copier dans l'autre feuille donc pas de nouvel évènement dans la feuille en cours donc normalement pas de "boucle folle" !?... non ?

En revanche, si on resaisit au clavier un "X" sur un "X" existant, là la ligne est doublée ...
 

Pièces jointes

Dernière édition:
Re : Macro : effacement d'une seule ligne

Re bpierre, Catrice

Effectivement Bizarre...vousavezditbizzare...commec'estbizzare

@Catrice Effectivement ça Fonctionne SI:

Double Click et Changement de Feuille

ça fait Doublon SI:

Double Click-->Changement de Cellule sur la Même feuille et Changement de Feuille.
c'est pour cela que tout mettre dans Worksheet_BeforeDoubleClick() me semblait être une bonne Idée 🙂

@bpierre regardes le Fichier Joint en espérant que cela Fonctionne

Bonne Journée
 

Pièces jointes

Re : Macro : effacement d'une seule ligne

Bonsoir Dull et bpierre,

Je ne reproduis pas le probleme.

Je n'ai malheureusement pas Excel 2003 pour approfondir les tests mais sous Excel 2002, mon code permet d'ajouter un "X" par double clic ou au clavier ce qui transmet la ligne dans l'autre onglet. S'il y a déjà un "X" il est supprimé et la ligne correspondante aussi.
Le code de Dull contourne le probleme dans Excel 2003 tant mieux.
Mais bpierre, du coup, plus de saisie clavier 🙁

PS - Dans le code de Dull (et encore plus que dans le mien) normalement le Application.EnableEvents = False n'est pas necessaire.
Vraiment, je ne comprend pas le pb ...
Dull, chez toi c'est pareil que chez bpierre ?

Double Click-->Changement de Cellule sur la Même feuille et Changement de Feuille.
Je n'ai pas compris ce step by step.
 
Dernière édition:
Re : Macro : effacement d'une seule ligne

Salut bpierre, Catrice, le Forum

Effectivement Catrice avec Excel 2003 j'ai le même souci

Déjà à l'ouverture du Fichier Non pas 1 mais 2 Fichier s'ouvrent simultanément nommés respectivement Effacement 4:1 et Effacement 4:2
le plus drôle c'est que dans le VBA seul le fichier Effacement 4 existe😕

Catrice2.jpg
Donc je supprime le Fichier Doublon.

Au dblclick pour la création d'un X: 2 lignes identiques sont crées dans la feuille cota. d'où le regroupement dans un seul événementiel soit le Double Click

Autre chose: le premier DblClick fonctionne nickel (sauf le souci cité plus haut)... au deuxième idem tant que je crée des X. A l'effacement d'un X ça fonctionne aussi, puis si tu essayes d'en effacer un 2ème...plus rien ni ajout ni retrait

je suis dépassé car tes lignes de codes me paraissent parfaites et je ne vois pas ou le bas blesse
Désolé de ne t'être d'un plus grand secours Catrice 😱

Bonne Journée
 
Re : Macro : effacement d'une seule ligne

Bonjour,

Pour les 2 fenetres, un seul fichier s'ouvre mais dans 2 fenetres. J'en avais affiché 2 pour voir ce qui se passait.
=> Fenetre/nouvelle Fenetre et Fenetre/Réorganiser... puis selectionner 1 onglet différent dans chaque fenetre.
Mais ça n'a pas d'incidence sur le code.
Pour supprimer une fenetre, il faut effectivement en fermer une et enregistrer le fichier.
Dans Vba tu ne vois que le fichier Effacement4 car seul l'objet Window est affecté pas l'objet WorkBook.
Sub test()
MsgBox ActiveWorkbook.Windows.Count
End Sub
=> Renvoie 2

Qqun sous Excel 2003 peut il jeter un oeil ?
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

B
Réponses
9
Affichages
896
Benskyy
B
B
Réponses
2
Affichages
2 K
Bitiligo
B
M
Réponses
6
Affichages
2 K
Maryloo2005
M
S
Réponses
6
Affichages
1 K
snipe2004
S
Réponses
12
Affichages
1 K
T
Réponses
8
Affichages
1 K
touristeamateur
T
P
Réponses
1
Affichages
2 K
PierreJeanPierre
P
Retour