web-dev-qa-db-fra.com

Comment obtenir les valeurs distinctes/uniques dans une colonne d'Excel?

Si j'ai une colonne avec des valeurs et que je veux savoir quelles sont les valeurs distinctes (pas combien - mais les valeurs distinctes réelles), comment puis-je le faire?

Dans SQL Server, je ferais quelque chose comme

SELECT Distinct(MyColumn) FROM MyTable
274
Kjensen

Plus simple que vous ne le pensez:

  • Cliquez sur le menu Données Ruban
  • Sélectionnez le bouton Avancé dans la section Trier & filtrer
  • Remplissez la boîte de dialogue en copiant les résultats dans un autre emplacement et en vous assurant de cocher Activer uniquement les enregistrements uniques

enter image description here

291
A Dwarf

Excel 2007 et 2010:
Utilisez l'option de menu Remove Duplicates sous l'en-tête Data .

Excel 2003:
Moyen facile:

  1. Assurez-vous que vos données ont un en-tête
  2. Données -> Filtre -> Filtre avancé
  3. Vérifier les enregistrements uniques uniquement
  4. Sélectionnez Copier vers un autre emplacement
  5. Cliquez sur OK

Façon difficile:

Ecrivez une macro avec le code suivant:

'Remove duplicates from sorted list
Sub getDistinct()
    Do While ActiveCell.Value <> ""
        If ActiveCell.Value = ActiveCell.Offset(1, 0).Value Then
            ActiveCell.Select
            Selection.Delete Shift:=xlUp
        Else
            ActiveCell.Offset(1, 0).Activate
        End If
    Loop
End Sub

Cela vous donne votre liste distincte. Vous voudrez peut-être d'abord copier votre liste sur une autre feuille.

129
Nathan DeWitt

J'utilise deux méthodes principales pour obtenir des valeurs distinctes - la première est l'outil inestimable Remove Duplicates as suggéré par Nathan DeWitt .

L'inconvénient de Remove Duplicates est que vous perdez des données. Malgré le pouvoir de Ctrl+z vous pouvez ne pas vouloir le faire pour diverses raisons - par exemple, vous pouvez avoir les filtres actuellement sélectionnés qui rendent assez compliqué de supprimer les doublons pour obtenir votre liste de valeurs distincte.

L'autre méthode, non mentionnée ci-dessus, consiste à utiliser un tableau croisé dynamique.

Disons qu'il s'agit de votre table et que vous souhaitez obtenir la liste distincte des plates-formes. dummy table

Insérez un Pivot Table avec la table comme source de données.

Sélectionnez maintenant la colonne Platform (s) en tant que votre Row Labels.

Voila! Une liste de valeurs distinctes.

pivot table as distinct value list

Si vous souhaitez régler cela, vous pouvez désactiver Field Headers et définir Grand Totals pour qu'il soit Off for Rows and Columns.

20
Andi Mohr

Ou (d'une manière simple et grossière):

En B1,

=IF(COUNTIF(A$1:A1,A1)=1,A1,"") 

et copier. Il ne fait que copier la première occurrence de chaque valeur (dans la ligne dans laquelle elle apparaît).

17
Tapgas

Ou vous pouvez inclure l'option de filtre dans une macro

    Columns("A:A").AdvancedFilter Action:=xlFilterInPlace, Unique:=True
5
cjcottell

Pour moi, le moyen le plus simple de trier est d'utiliser l'option "Filtrer".

La première étape consiste à rechercher les valeurs en double avec Mise en forme conditionnelle -> Règles de mise en évidence des cellules -> Valeurs en double.

Cliquez ensuite sur la flèche de la colonne dans laquelle se trouvent les doublons (dans le cas présent, "Plateformes") -> Filtrer par couleur (couleur des cellules ou couleur de la police).

3
Just Me