Comment puis-je obtenir un tableau de lignes un à plusieurs en fusionnant des cellules dupliquées dans une grande table normalisée?

Comme je suis un novice en ce qui concerne Excel (et l'ensemble de la suite Microsoft Office, pour être honnête), j'ai consacré beaucoup de temps à la recherche d'une solution à ce problème – comment obtenir un tableau de rangs un à plusieurs parmi Une table normalisée – et puisque je publie ceci, il est évident que je n'ai pas trouvé de réponse appropriée.

Pour être plus clair, disons que le tableau normalisé initial est celui présenté ci-dessous:

Comment apparemment la table

Et le tableau résultant devrait ressembler à ceci:

Comment le tableau devrait ressembler

Maintenant, pour une table avec quelques lignes, la réponse est assez évidente et un peu inefficace:

  1. Trier la colonne qui contient des cellules ayant la même valeur;
  2. Sélectionnez manuellement les groupes de cellules avec la même valeur et cliquez avec le bouton droit sur le bouton "Fusionner & Centre" (voir l'image ci-dessous).
  3. Répétez l'étape 2 pour tous les groupes identifiés de cellules dupliquées dans cette colonne.

L'approche «Fusion et Centre»

Le défi consiste à obtenir le même résultat pour une table avec un grand nombre de données (~ 6k lignes), avec Excel 2010. De toute évidence, la solution présentée ci-dessus est loin d'être efficace.

Des pensées à ce sujet? J'apprécierais vraiment votre aide.

Avez-vous regardé les tables pivot? Cela semble faire exactement comme vous le souhaitez.

La première chose à faire est de vous assurer que vous avez une ligne d'en-tête dans votre tableau de données.

Ensuite, sélectionnez une cellule dans votre gamme de données et accédez à l'onglet Insertion, puis choisissez la table pivot.

Acceptez les valeurs par défaut et cliquez sur OK. Cela ouvrira un nouveau tableau pivot et vous voudrez placer Field1 et Field2 dans la section "lignes" (premier champ 1).

Ensuite, il vous suffit de modifier certaines options de mise en forme:

Dans l'onglet Outils de tableaux pivotants (qui est maintenant apparu sous la forme du tableau pivot), cliquez sur l'onglet Conception et, dans le groupe Mise en page, sélectionnez Présentation / présentation du rapport sous forme tabulaire

Encore une fois dans la même table pivotale Outils / Design / Layout, choisissez Sous-totaux / Ne pas afficher les sous-totaux

Encore une fois dans la même table pivotale Outils / Design / Layout, choisissez Grand Totals / Off pour les lignes et les colonnes

Enfin, cliquez avec le bouton droit n'importe où dans votre tableau de données et choisissez Options de tableau de pivotement, puis dans le premier onglet (Mise en page et format) cochez la case qui indique Fusionner et centrer les cellules avec des étiquettes

Vous pouvez ensuite réutiliser ce tableau croisé dynamique pour pointer vers un nouveau jeu de données lorsqu'il devient disponible ( Outils de tableau pivot / Options / Changer la source de données )

EDIT: Juste pour vous montrer à quoi ressemble la sortie finale. Cela m'a pris moins de vingt clics:

Résultat du tableau pivot

Vous pouvez utiliser l'option Sous-total, située sous l'onglet Données du ruban. J'ai recréé votre feuille de calcul comme indiqué ci-dessous:

Total

Si je viens de mettre en évidence les données, cliquez sur le bouton Sous-total et définissez les options ci-dessous:

Options

Je reçois la sortie suivante, ce n'est pas exactement ce que vous attendez, mais cela peut vous aider:

Sortie

Jon a proposé une bonne tentative à ce sujet, mais comme vous l'avez déclaré, vous êtes «nouveau» pour MS Office, je vais vous proposer des approches différentes.

Vous devriez vous questionner ou la demande de cette tâche, si Excel est le bon outil pour cela, car il s'agit plus d'une tâche Access / SQL.

Si cela doit être Excel, vous pouvez également utiliser la fonction Subsum sur Datatab. Ce n'est pas aussi puissant qu'un tableau croisé dynamique, mais fondamentalement des fonctionnalités très similaires.