Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

stefiskool

XLDnaute Nouveau
Bonjour le forum, je suis complètement bloqué, et j'ai besoin de votre aide.

Je résume vite fait.

J'ai un tableau de base à 3 colonnes (DATE, VILLE, SPORT).
Pour chaque date, il y a une association d'une ville et d'un sport.
Une seule ville et un seul sport par date.

Par contre, il est possible qu'une association VILLE-SPORT existe à plusieurs dates, ce qui va donc créer des doublons.

Ce dont j'ai besoin, c'est obtenir un tableau récap des associations VILLE-SPORT.
Je me fous des dates, et je me fous du nombre de fois où l'association a eu lieu, je veux juste lister toutes les associations existantes, sans doublons.

Je vous ai fait un petit fichier test pour mieux comprendre. Évidemment, mon tableau de travail est immense, avec de nombreuses villes et de nombreux sports différents. Si c'était juste pour quelques lignes, je me casserai pas autant la tête, mais vu la taille de mon tableau, j'ai besoin d'une automatisation.

Pouvez-vous m'apporter votre aide et me mettre sur la bonne voie SVP?

J'ai un niveau correct pour une utilisation très basique de Excel, alors désolé si vous rentrez dans des explications très complexes si je ne comprend pas tout tout de suite, mais si vous faîtes l'effort de m'aider, moi je ferai les efforts pour comprendre en cherchant aussi de mon côté avec les pistes que vous me proposez.

Merci beaucoup, bon dimanche, et bonne fêtes ;)
 

Pièces jointes

  • test.xlsx
    10.8 KB · Affichages: 54
  • test.xlsx
    10.8 KB · Affichages: 53

stefiskool

XLDnaute Nouveau
Re : Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

Bonsoir, j'ai réussi à prendre un peu de temps pour étudier ça.
Alors la première proposition de BOISGONTIER fonctionne bien. Je ne connaissais pas du tout cette fonction, merci pour cette découverte!
Le seul truc c'est que ça se met pas en forme comme je le voudrai, et qua ça se met pas à jour tout seul, faut refaire un filtre de temps en temps.
Mais en tout cas, je suis content d'avoir appris ça, si je m'en sors pas avec les TCD, j'utiliserai ce filtre. Et sûr et certain que je vais l'utiliser pour d'autres choses.

Pour les TCD, je n'y connais absolument rien. J'en ai souvent entendu parler, mais jamais mis les doigts là-dedans.
Et avant de poster ce message de demande d'aide, j'avais essayer ça, sans savoir si ça répondrai à ma demande, mais pas moyen d'arriver à créer un tableau, même simple.
Du coup, en voyant vos tests, je me suis senti con!!!
J'ai cherché, et cherché, et j'ai trouvé pourquoi ça ne voulait pas fonctionner, j'avais des colonnes fusionnées...

Maintenant que j'ai trouvé le moyen de créer un tableau, et que je vois avec vos exemples qu'on peut faire quelque chose de propre, et qui peut vraiment m'aider, je vais me pencher sur ça plus en détails.

Merci pour vos interventions et votre aide, je reviendrai vers vous dans quelques temps pour vous tenir au courant de l'avancement ;)
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix

Pièces jointes

  • SansDoublons2colonnes.xls
    41 KB · Affichages: 50
Dernière édition:

david84

XLDnaute Barbatruc
Re : Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

Bonjour,
deux traitements par formule (validation par cellule ou en une seule fois sur une plage).
Pour les explications voir ce lien.
A+
 

Pièces jointes

  • Sans_doublon_2_col.xlsx
    11.1 KB · Affichages: 34
  • Sans_doublon_2_col.xlsx
    11.1 KB · Affichages: 64

stefiskool

XLDnaute Nouveau
Re : Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

Bonjour,

Avec fonction perso (la maj est automatique)

-Sélectionner M2:N14
=sansdoublons2(B2:C1000)
-Valider avec maj+ctrl+entrée


JB


Cette formule me plaît beaucoup, courte et simple, mais très efficace, merci !!!!!


Bonjour,
deux traitements par formule (validation par cellule ou en une seule fois sur une plage).
Pour les explications voir ce lien.
A+
On arrive au même résultat qu'avec la formule matricielle sans doublons.
Mon problème est que ta formule est vraiment trop compliquée pour moi, je suis perdu.
Bravo à toi, pcq pondre un truc pareil, c'est costaud.

Pour le moment je vais utiliser celle de Boisgontier, je je comprends.
Je ne sais pas encore si la tienne est plus complète, et que du coup elle m'éviterai des soucis sur certaines lignes dans certains cas, peut-être, si ça arrive, alors j'essaierai la tienne voir si elle règle le problème.

Mais pour le moment je préfère utiliser quelque chose que je comprend.

Les TCD, putain c'est balaise.
On peut vraiment faire beaucoup de choses avec ça, mais j'ai du mal à faire mes calculs sur les colonnes un peu plus complexes en passant par un TCD.

Du coup la formule simple sans doublons me convient, car en plus, par rapport au TCD, je vais pourvoir mettre en forme à l'avance mon tableau avec des formules.

Merci toutefois de m'y avoir intéressé, je découvre ça et ça à vraiment l'air pas mal, je continuerai à m'y intéresser du coup pour en apprendre un peu plus à ce sujet, et le maîtriser de mieux en mieux.

Merci à tous pour vos participations généreuses.
Vous êtes vraiment d'une grande aide!

Passez de très bonnes fêtes de fin d'année!!!!
 

david84

XLDnaute Barbatruc
Re : Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

Bonjour,
pour info, possibilité de n'utiliser qu'une seule formule traitant des 2 colonnes et qui puisse être validée en une seule fois sur une matrice à 2 colonnes.
Ceci dit, sur le principe il me semble que c'est typiquement une question à traiter en TCD.
A+
 

Pièces jointes

  • Sans_doublon_2_col.xlsx
    11.2 KB · Affichages: 36
  • Sans_doublon_2_col.xlsx
    11.2 KB · Affichages: 45
Dernière édition:

laetitia90

XLDnaute Barbatruc
Re : Créer un tableau récapitulatif, un vrai casse-tête pour moi!!!!!!!!

bonjour tous :):):)
encore une version macro

Sub es()
Dim t(), m As Object, z, x As Long
t = Range("b1:c" & Cells(Rows.Count, 2).End(3).Row)
Set m = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(t)
z = t(i, 1) & t(i, 2)
If Not m.Exists(z) Then
m.Add z, z
x = x + 1
t(x, 1) = t(i, 1): t(x, 2) = t(i, 2)
End If
Next i
[F1].Resize(x, 2) = t
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 638
Messages
2 111 477
Membres
111 165
dernier inscrit
Nadir NADIR