Excel: supprimer les doublons dans une colonne tout en conservant la valeur la plus élevée dans la colonne adjacente

StackOverflow https://stackoverflow.com/questions/1443051

Question

J'ai une feuille de calcul Excel à deux colonnes. La première colonne est une étiquette, la deuxième colonne est une valeur numérique. Je souhaite supprimer toutes les étiquettes en double de la colonne "A". et rester avec la valeur numérique maximale dans la colonne "B". J'ai essayé d'illustrer ci-dessous (le filtre aurait pour résultat "Feuille consolidée" et "Feuille originale":

REMARQUE 1: J'essaie d'analyser les fichiers journaux du serveur de messagerie pour obtenir une liste des hôtes et leurs connexions SMTP maximales un jour donné. Si vous pouvez suggérer un moyen de le faire sous Windows (même si cela implique d’utiliser Strawberry Perl), j’apprécierais la solution.

NOTE 2: Vous devrez peut-être utiliser votre imagination avec le "tableur". J'ai schématisé ci-dessous, j'ai essayé de mettre chaque ligne dans une ligne individuelle mais toutes les lignes sont rendues dans une seule ligne. [EDIT] Corrigé en mettant tout dans une liste non ordonnée.

"Feuille d'origine"

  • colA, colB
  • nom1, 32.0,
  • nom1, 12.5,
  • nom1, 11.0,
  • nom1, 10.1,
  • nom1, 6.9,
  • nom2, 2.3,
  • nom2, 1.1,
  • nom2, 0.9,
  • name3, 54,
  • name3, 60,
  • name3, 101,
  • nom3, 12,

"Fiche consolidée"

  • colA, colB
  • nom1, 32.0,
  • nom2, 2.3,
  • name3, 101,

Cordialement, emk

Était-ce utile?

La solution

Ne pouvez-vous pas simplement utiliser la fonctionnalité de tableau croisé dynamique d'Excel?

Autres conseils

Vous pouvez utiliser le filtre avancé avec les "enregistrements uniques uniquement". case à cocher sélectionnée et copier les valeurs uniques dans un nouvel emplacement.

Une fois que vous avez les valeurs uniques, vous pouvez utiliser une fonction de tableau pour trouver la valeur maximale.

Supposons que vos données d'origine se trouvent dans a2: a13 et que vos valeurs uniques se trouvent dans d2: d4 (en ignorant les en-têtes de colonne). Votre formule en e2 serait = SOMMEPROD (MAX ((A2: A13 $ = D2) * ($ B2: B13))))

Les fonctions de tableau doivent être entrées dans la cellule avec Ctrl + Maj + Entrée, au lieu de simplement entrer.

Cependant, comme le dit JDunkerley, un tableau croisé dynamique serait votre méthode la plus simple et la plus rapide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top