Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

Comment supprimer les lignes en double et conserver les valeurs les plus élevées uniquement dans Excel?

Par exemple, vous avez une table d'achat dans Excel comme première capture d'écran. Vous devez maintenant supprimer les lignes en double en fonction de la colonne Fruit et conserver les valeurs les plus élevées des fruits correspondants dans la colonne Quantité comme la deuxième capture d'écran. Pouvez-vous penser à une solution? Cet article partagera deux astuces pour le résoudre.

Supprimer les lignes en double et conserver les valeurs les plus élevées uniquement avec VBA

Supprimez les lignes en double et conservez les valeurs les plus élevées uniquement avec Kutools for Excel

Supprimez facilement les lignes en double en fonction de critères dans une colonne et ne conservez que les valeurs les plus élevées dans Excel

Kutools pour Excel Lignes de combinaison avancées L'utilitaire peut aider les utilisateurs d'Excel à trouver rapidement la valeur maximale de la valeur minimale de chaque élément dans une autre colonne avec facilité. Essai gratuit complet de 30 jours!

ad avancé combiner les lignes max

Cet utilitaire avancé de combinaison de lignes peut également combiner des lignes et des valeurs séparées par des marques spécifiées, ou combiner des lignes et calculer leurs sommes, le nombre d'occurrences, les valeurs maximum / minimum, les moyennes, etc.

Onglet Office Activez la modification et la navigation par onglets dans Office et simplifiez considérablement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, les graphiques et tout autre élément les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement à l'avenir.
  • Plus de 20 fonctionnalités de texte: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Outils de fusion: Plusieurs classeurs et feuilles en un seul; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils de fractionnement: Diviser les données en plusieurs feuilles en fonction de la valeur; Un classeur vers plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller sauter Lignes cachées / filtrées; Compte et somme par couleur d'arrière-plan; Envoyez des e-mails personnalisés à plusieurs destinataires en masse.
  • Super filtre: Créez des schémas de filtres avancés et appliquez-les à toutes les feuilles; Trier par semaine, jour, fréquence et plus encore; Filtre par gras, formules, commentaire ...
  • Plus de 300 fonctionnalités puissantes; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.


Supposons que vous ayez un tableau comme ci-dessous. Et cette méthode introduira une macro VBA pour supprimer les lignes en double en fonction d'une certaine colonne et conserver les valeurs les plus élevées uniquement dans une autre colonne d'Excel. Veuillez procéder comme suit:

1. appuie sur le autre + F11 simultanément pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez insérer > Moduleet collez le code suivant dans la nouvelle fenêtre Module d'ouverture.

VBA: supprimez les lignes en double et conservez les valeurs les plus élevées

Public Sub DelDupes()
Dim xFilterRg As Range
Dim xCriteriaRg As Range
Dim xAddress As String
Dim xSUpdate As Boolean
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xFilterRg = Application.InputBox("Please select a range:", "Kutools for Excel", xAddress, , , , , 8)
If xFilterRg Is Nothing Then Exit Sub
Set xFilterRg = Application.Intersect(ActiveSheet.UsedRange, xFilterRg)
If xFilterRg Is Nothing Then Exit Sub
On Error GoTo 0
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
Set xCriteriaRg = ActiveSheet.Cells(1, xFilterRg.Column + xFilterRg.Columns.Count).Resize(2)
xCriteriaRg.Resize(1).Offset(1).Formula = "=COUNTIF(" & xFilterRg(2, 1).Address & ":" & _
xFilterRg(2, 1).Address(False, False) & "," & _
xFilterRg(2, 1).Address(False, False) & ")>1"
With xFilterRg
.Sort key1:=xFilterRg.Cells(1, 1).Offset(0, 1), order1:=xlDescending, Header:=xlYes
.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=xCriteriaRg
.Offset(1).SpecialCells(xlCellTypeVisible).EntireRow.Delete
.Parent.ShowAllData
End With
xCriteriaRg.Clear
Application.ScreenUpdating = xSUpdate
End Sub

3. appuie sur le F5 ou cliquez sur la course bouton pour exécuter ce VBA.

4. Une boîte de dialogue apparaît maintenant. Veuillez sélectionner les colonnes dans lesquelles vous allez supprimer les doublons et réserver les valeurs les plus élevées, puis cliquez sur le bouton OK .

Dans notre cas, nous supprimerons les lignes en double par colonne de fruits et conserverons les valeurs les plus élevées dans la colonne de montant.Par conséquent, je sélectionne la colonne de fruits et la colonne de quantité comme illustré ci-dessus.

Ensuite, vous verrez que les lignes en double sont supprimées en fonction de la colonne Fruit, et les valeurs les plus élevées des fruits correspondants sont conservées dans la colonne Quantité. Voir la capture d'écran:

Notes:

(1) La plage spécifiée doit commencer par la colonne par laquelle vous supprimerez les lignes dupliquées.

(2) Ce VBA ne peut conserver que les valeurs les plus élevées de la colonne juste derrière la colonne par laquelle vous avez supprimé les lignes en double.

(3) Ce VBA ne fonctionne pas dans Microsoft Excel 2007.


Le VBA ci-dessus peut ne pas être assez facile pour certains utilisateurs, et il ne peut conserver que les valeurs les plus élevées dans la colonne derrière la colonne des critères. Mais Kutools pour Excel Lignes de combinaison avancées L'utilitaire vous aidera à résoudre facilement ce problème.

Kutools pour Excel - Comprend plus de 300 outils pratiques pour Excel. Essai gratuit complet de 30 jours, aucune carte de crédit requise! Essai gratuit maintenant!

1. Sélectionnez le tableau dans lequel vous supprimerez les lignes en double et conserverez les valeurs les plus élevées (sélectionnez A1: C24 dans notre cas), puis cliquez sur Kutools > du Paquet > Lignes de combinaison avancées.

2. Dans la boîte de dialogue d'ouverture Combiner les lignes en fonction de la colonne, veuillez configurer comme suit:

(1) Sélectionnez la colonne Fruit (par laquelle vous supprimerez les lignes en double), puis cliquez sur le bouton Clé primaire bouton;

(2) Sélectionnez la colonne Montant (dans laquelle vous conserverez les valeurs les plus élevées), puis cliquez sur Calculer > max.

(3) Spécifiez les règles de combinaison pour les autres colonnes selon vos besoins.

doc supprimer les doublons conserver la valeur la plus élevée 2

3. Cliquez sur l' Ok bouton. Et puis, vous verrez toutes les lignes en double sont supprimées en fonction de la colonne de fruits et seules les valeurs maximales des fruits correspondants sont conservées dans la colonne Quantité. Voir la capture d'écran:

En XNUMX, le Lignes de combinaison avancées L'utilitaire de Kutools for Excel peut facilement combiner des lignes par une colonne, puis calculer d'autres colonnes en fonction de ces colonnes, telles que Sum, Count, Max, Min, Product, etc. Cliquez pour un essai gratuit de 60 jours, sans limitation!


Kutools pour Excel comprend plus de 300 outils pratiques pour Excel, gratuits à essayer sans limitation en 30 jours. Téléchargez et essayez gratuitement maintenant!

Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Hesham · 1 years ago
    in VBA example, the date column doesn't filter. please advise.