2009-10-06 6 views
4

J'ai une longue liste de noms de produits et de nombres de ces produits, je veux combiner toutes les entrées en double et ajouter leurs nombres. Donc, si j'ai 2 entrées pour Widget X, et que chaque entrée a 3 produits, alors je veux combiner cela avec une entrée pour Widget X avec 6 produits. J'ai trié la liste et les ai additionnés pour chaque produit mais j'ai simplement utilisé une fonction de somme, j'ai senti qu'il devait y avoir une formule qui utilise une instruction IF pour détecter les entrées qui se valident et ensuite additionner leur quantité respective lignes mais je ne peux pas le comprendre.Additionner des doublons dans Excel

Ce que je suis en train de faire est IF (un champ dans la colonne A = 3792, somme alors tous ses champs de quantité associés dans la colonne C)

Quelqu'un at-il des idées?

3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 2 
3792 Widget A 1 
3805 Widget B 1 
3805 Widget B 1 
3806 Widget C 8 
3823 Widget D 895 
3823 Widget D 1 
3823 Widget D 20 
3892 Widget E 2 
3892 Widget E 1 
3892 Widget E 1 
+0

@Stewbob: Je pense que c'est au bon endroit. Il a à voir avec les formules et les formules sont une sorte de codage. – Atmocreations

Répondre

3

-Formule de SUMIF() Excel peut vous aider accomplir ceci.

comme décrit, la syntaxe est

SUMIF(range, criteria, sum_range) 

Recherches les champs dans range qui correspondent à criteria et résume les valeurs sum_range (au même indice où les critères ont été trouvés dans la gamme, respectivement).

vous pouvez créer une matrice pour chaque numéro/critères de recherche pour résumer et comparer ...

Une autre approche:

Pour une certaine colonne (nous allons prendre C) font temporaire colonne et ajoutez une valeur 1 à chaque ligne.

Par exemple, dans la colonne « Somme A: » taper la formule:

=IF($A2=D$1,1,0) 

considérant que D1 est la cellule contenant le numéro 3792 (en haut) et de la 2 dans C2 est la ligne courante la formule peuplements

Vous seriez simplement en mesure de le faire glisser vers la droite et vers le bas.

Ce serait le résultat:

A  B   C   D   E   F   G 
        3792  3805  3806  3823  3892 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3792 Widget A 1 
3805 Widget B    1 
3805 Widget B    1 
3806 Widget C      1 
3823 Widget D         1 
3823 Widget D         1 
3823 Widget D         1 
3892 Widget E           1 
3892 Widget E           1 
3892 Widget E           1 

SUM:    7   2  1   3   3 

Vous venez de résumer simplement à la fin et vous avez obtenu vos résultats. Si un autre numéro doit être ajouté à 1, ajoutez simplement une autre colonne contenant la valeur appropriée, puis remplacez-la par la formule IF.

vous voudrez peut-être automatiser cela encore plus en utilisant un HLOOKUP() pour le numéro de widget en haut.

concernant

+0

J'ai = SUMIF (A: A, 3792, C: C), cette somme est calculée pour chaque code de produit entré dans le champ des critères. Je vais regarder dans les matrices pour voir si je peux obtenir une liste entièrement automatisée. Bonne réponse, très appréciée. – Niall

+0

np. Je ne parle pas d'Excel-Matrices. J'ai édité ma réponse pour clarifier – Atmocreations

3

Utilisez la fonction sumif. Voir this blog pour une explication.

En supposant que les valeurs ouvertes dans A1, collez cette fonction en D1 et copie D1-D16 pour obtenir des sommes pour chaque domaine (il y aurait bien sûr des doublons)

=SUMIF(A$1:A$16,A1,C$1:C$16) 
+0

Merci Rich, je viens de regarder la première réponse qui vient, j'accepterais votre réponse aussi si je pouvais pour plus d'un. – Niall

+0

en fait le mien a été la première réponse par un plein de 13 secondes, encore peu importe –

+0

oh oui, la deuxième réponse doit avoir été votée alors, c'était juste le premier que j'avais vu – Niall

3

Puisque vous avez la liste triée, je voudrais utiliser la fonction builtin SUBTOTAL au lieu d'une formule. Sélectionnez toutes vos données puis goto Data> Subtotal Ensuite, faites-le basé sur le changement de produit.

L'autre option consiste à créer un tableau croisé dynamique qui additionnera les éléments. Je suis un grand fan de garder le résumé et les données séparées.

0

Le message original date d'il y a 7 ans mais voici mon approche utilisant de toute façon un peu plus de force brute.

J'ai pris toute la "Colonne A" et copié collé dans une nouvelle feuille (ou vers la droite ou quelque part à l'écart). Mettez en surbrillance l'ensemble de données copié et les doublons supprimés en laissant une nouvelle liste d'instances uniques de valeurs de la "Colonne A". Appelons ce nouvel ensemble de données "Colonne D". Ensuite, nous appellerons les totaux colonne « Colonne E »

J'ai ensuite utilisé SUMPRODUCT conjointement avec SUMIF dans « colonne E » pour obtenir une formule comme ceci:

Colonne E Valeur = SUMPRODUCT (SUMIF (originale colonne a Gamme, valeur de recherche en question de la colonne D, va colonne originale C))

Cela somme de toutes les instances et de la production un grand total.

Il est évident que les résultats ne seront pas automatiquement mis à jour pour inclure de nouvelles instances de «Colonne A», mais si vous disposez d'un ensemble de données existant que vous souhaitez extraire, cela pourrait être une solution rapide.

JD

Questions connexes