effacer une ligne avec macro

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
 

Jocelyn

XLDnaute Barbatruc
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
 
D

dudu33

Guest
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
 

Jocelyn

XLDnaute Barbatruc
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
 
D

dudu33

Guest
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
 

Jocelyn

XLDnaute Barbatruc
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
 

Hervé

XLDnaute Barbatruc
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
 
D

dudu33

Guest
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
 

Discussions similaires

Réponses
17
Affichages
450
Réponses
2
Affichages
135

Statistiques des forums

Discussions
312 231
Messages
2 086 450
Membres
103 214
dernier inscrit
MASSA1616