Supprimer lignes si valeurs dans un tableau

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

J

JCC0127

Guest
Bonjour le forum,

Je débute dans le VBA et je voudrais supprimer des lignes d'une feuille Excel si un mot qui est dans un tableau se trouve dans la colonne A !

J'ai commencé un macro, mais je ne sais pas comment faire chercher dans un tableau.
Merci dfe votre aide

Sub test()

Dim x As Integer

For x = Range('A65536').End(xlUp).Row To 2 Step -1
If Not UCase(Range('A' & x)) Like '*ECHSITE*' Then
Rows(x).Delete
End If
Next

End Sub

JCC
 
Et bien, j'ai une colonne dans une autre feuille (je peux aussi la mettre dans la même feuille si c'est plus simpe)avec des mots qui se trouvent aussi dans mon tableau dans la colonne A.
Ils servent de critères de recherche.

JCC
 
Je viens d'essayer ceci, mais ça vide mon tableau !!

Sub test()

Dim x As Integer

For x = Range('A65536').End(xlUp).Row To 2 Step -1
If Not UCase(Range('A' & x)) Like '*ECHSITE*' Or UCase(Range('A' & x)) Like '*COMMUN*' Then
Rows(x).Delete
End If
Next
End Sub

JCC
 
Heuu... Merci !!
Mais comment utiliser cette commande dans mon cas ?

Sub test()

Dim x As Integer

For x = Range('A65536').End(xlUp).Row To 2 Step -1
If Not UCase(Range('A' & x)) Like '*ECHSITE*' Or UCase(Range('A' & x)) Like '*COMMUN*' Then
Rows(x).Delete
End If
Next
End Sub

Merci.
JCC
 
Okay on va changer de méthode,

Est-ce que ça te parles plus:

Sub test()
For Each cell1 In Range('colonne')
For Each cell2 In Range('tableau')
If cell1 = cell2 Then
cell1.EntireRow.Delete
GoTo suite
End If
Next cell2
suite:
Next cell1
End Sub

Où 'colonne' est le nom du champ que tu balayes (A1:A65500 dans ton exemple)
et 'tableau' le nom de champ donné à ton tableau (attention il vaut mieux qu'il soit sur un autre onglet vu que la macro supprime des lignes).

Cdt
Thilam
 
Quelqu'un pourait-il m'aider, SVP ?
Comment utiliser la commande 'WorksheetFunction.Vlookup( arg1,arg2,arg3,arg4)' dans ce cas ?


Sub test()

Dim x As Integer

For x = Range('A65536').End(xlUp).Row To 2 Step -1
If Not UCase(Range('A' & x)) Like '*ECHSITE*' Or UCase(Range('A' & x)) Like '*COMMUN*' Then
Rows(x).Delete
End If
Next
End Sub

Merci d'avance.
JCC
:huh:
 
- 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

Réponses
5
Affichages
909
Réponses
15
Affichages
782
Retour