effacer une ligne avec macro

  • Initiateur de la discussion Initiateur de la discussion dudu33
  • 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 !

D

dudu33

Guest
bonjour,

Lors de l'exécution de ma macro qui réalise une recherche, la macro me selectionne une cellule (je ne connais pas ses coordonnées, avec la macro).
et j'aimerai effacer toute la ligne.

Est ce que quelqu'un connait une solution?

Merci
 
Bonjour le Forum,
Bonjour dudu33,

Je ne sais pas si je pourrais t'aider mais un petit fichier exemple serait le bien venu.

autrement ce qui me vient a l'idée comme ca serait quelque chose du genre

Range(ta cellule touvée par la macro)).EntireRow.Delete

Jocelyn
 
Bonjour,

En fait ma macro me selectionne la cellule A12 par exemple et moi j'aimerai que la macro me sélectionne toute la ligne pour pouvoir la supprimer.

Mais je ne veux pas utiliser de
Rows ('12:12') etc.. car le résultat de la recherche n'est pas toujours le meme.

Désolé je ne peux pas t'envoyer le fichier car il est trop volumineux.

Dudu33
 
re,


une fois que ta cellule est trouvée ta macro en fait quoi ?

en gros l'idée de la ligne Range(cellule trouvé).EntireRow.Delete
c'est de dire a partir de la cellule trouvée on selectionne toute la ligne et on la supprime

bon si tu ne peux pas envoyé de fihier copies le code sans voir ce n'est pas facile.

Jocelyn
 
Re

Code:
Sub test()
Dim B As String

Feuil2.Select
B = Range('B11')

Feuil1.Select
With Columns('A') 'recherche en colonne A
        'recherche la valeur de la variable B
        If Not .Find(B) Is Nothing Then .Find(B).Select
        
End With

End Sub

Voila au final la macro me selectionne dans la feuil1 la valeur qui est contenu dans la cellule B11 de la feuil2.

et après il faut faire comme tu ma dis
Range(cellule trouvé).EntireRow.Delete

Mais je ne sais pas faire


Voila

dudu33
 
re,

Normalement si tu ajoute à

If Not .Find(B) Is Nothing Then .Find(B).Select.EntireRow.Delete

a partir de la cellule trouvée et sélectionnée la macro va selectionné toute la ligne et la suprimer

Jocelyn

Code:
If Not .Find(B) Is Nothing Then .Find(B).Select.EntireRow.Delete

Message édité par: Jocelyn, à: 16/02/2006 16:54
 
re dudu, jocelyn 😉

ton code modifié :



Sub test()
Dim B As String

B = Feuil2.Range('B11')

With Feuil1.Columns('A') 'recherche en colonne A
'recherche la valeur de la variable B et supprime la ligne
If Not .Find(B ) Is Nothing Then Range(.Find(B ).Address).EntireRow.Delete

End With

End Sub



Le meme code mais moins dépouiller afin de t'aider :


Sub Bouton2_QuandClic()
Dim variableachercher As String
Dim celluletrouver As Range

'stock la valeur à chercher
variableachercher = Feuil2.Range('B11')

'recherche la variableachercher dans la colonne A de la Feuil1 et la stock
'dans la variable celluletrouver
Set celluletrouver = Feuil1.Columns('A').Find(variableachercher)

'si la variable celluletrouver n'est pas vide
If Not celluletrouver Is Nothing Then
'on supprime la ligne complète
celluletrouver.EntireRow.Delete
End If

End Sub



dudu, pense à allez cloturer le fil précédent.

salut

Message édité par: hervé, à: 16/02/2006 17:06
 
Merci beaucoup pour vos réponse

Ca marche très bien avec:
Code:
Sub test() 
Dim B As String 

B = Feuil2.Range('B11') 

With Feuil1.Columns('A') 'recherche en colonne A 
'recherche la valeur de la variable B et supprime la ligne 
If Not .Find(B ) Is Nothing Then Range(.Find(B ).Address).EntireRow.Delete 

End With 

End Sub

Dudu33
 
- 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

  • Question Question
XL 2021 Macro
Réponses
6
Affichages
313
Retour