Formule OU Macro suppression de lignes

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

Riahi

XLDnaute Nouveau
Bonjour,

Je suis nouveau sur ce forum, et je vous écris parce que je suis confronté à une problématique.

En effet, je dispose de deux feuilles de calcul, la 1ere contient plus de 100 000 lignes avec 4 colonnes (les champs sont : Nom, Prénom, Activité, Adresse) et la 2 eme feuille elle contient 60 lignes (1 seule colonne dont il y'a une liste d'activités)

Ma problématique étant de savoir s'il y'a une formule ou une macro qui pourrais, détecter les activités de la feuille 2 dans la colonne activité de la feuille 1 et de supprimer ces lignes (je parle d'une suppression et non pas d'un effacement de la ligne)

Merci d'avance.
Nassreddine
 
Re : Formule OU Macro suppression de lignes

Bonsoir,
Formule non (une formule ne supprimera pas de ligne, elle pourra aider à les identifier au besoin, on peut les masquer avec un tri)
Macro oui

Sub effaceligne()
if match then entireRow.delete
end sub

file not found !
 
Re : Formule OU Macro suppression de lignes

Bonjour,
Merci pour votre retour, néanmoins, je n'ai pas pu assimiler votre réponse.
Pour vous faciliter les choses, le champs activité est dans la colonne C pour la feuille 1 et dans la colonne A pour la feuille 2
Que pensez vous de cette macro, même si je n'ai pas trouvé comment faire appel à la feuille 2 et sa colonne A (en rouge)

Sub DeleteRowWithContents()
Last = Cells(Rows.Count, "C").End(xlUp).Row
For i = Last To 1 Step -1
If (Cells(i, "C").Value) = "Activités" Then
'Cells(i, "A").EntireRow.ClearContents '
Cells(i, "A").EntireRow.Delete
End If
Next i
End Sub
 
Re : Formule OU Macro suppression de lignes

Bonjour,
Et si vous essayez ceci
VB:
Sub effaceligne()
Application.ScreenUpdating = False
With Sheets("Feuil1")
    For i = .Range("C" & Rows.Count).End(xlUp).Row To 1 Step -1
        If Application.CountIf(Sheets("Feuil2").[A:A], Val(.Cells(i, 3))) Then .Cells(i, 3).EntireRow.Delete
    Next i
End With
Application.ScreenUpdating = True
End Sub
Cette macro supprime la ligne de la feuille 1 si la valeur en colonne C est présente en colonne A de la feuille 2
Sauf erreur de ma part, puisque je n'ai pas reconstitué de fichier pour essayer .
Merci à Modeste (13/01/2013 10h34 https://www.excel-downloads.com/thr...une-comparaison-de-valeurs-de-colonne.199096/)
 
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

Discussions similaires

Réponses
75
Affichages
1 K
Réponses
7
Affichages
153
Réponses
3
Affichages
86
Réponses
4
Affichages
100
Retour