Faire correspondre le nom de la personne avec le plus H. Triple ou plus H

Bonjour à tous,

J'ai créé une formule qui inscrit les H. Triples, H. Simples (Voir pièce jointe) en ordre décroissant, ainsi que le nom, le numéro d'équipe et le numéro de la personne correspondant au plus H. Triple et plus H. Simple.

Les plus H. Triples et plus H. Simples sont inscrits dans deux tableau différents (Voir pièce jointe)

(Pour information seulement) Après inscription des plus H. Triples et plus H. Simples, les trois premiers sont copiés par une macro dans un tableau sur une autre feuille.

Mon problème est que lorsqu'il y a égalité dans les trois premiers plus H. Triples ou plus H. Simples seul les informations de la première personne s'inscrivent dans le tableau, en deuxième place. (voir tableau en pièce jointe).

J'aimerais, si possible modifier la formule afin que le nom, le numéro d'équipe, ainsi que le numéro correspondant, de la deuxième personne et de la troisième personne (si il y trois égalités) s'inscrive dans la cellule correspondante. Comme il n'y a pas d'égalité dans le tableau plus H. Simple, la formule fait son travail.

Une macro que je pourrais activée par la fonction "Call" dans la macro principale de mon système, pourrait aussi très bien faire le travail.

Merci beaucoup pour votre aide.

Bonjour Golfeur01

Je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aideront dans vos demandes et réponses sur ce forum et notamment

  • Ne postez aucune information personnelle et/ou confidentielle sur le forum (en particulier dans les fichiers joints) et rappelez-vous que vous êtes responsable de tout ce que vous postez sur le forum.

Bonjour Bruno,

Je ne suis pas certain de comprendre pourquoi vous avez retiré mon fichier. L'onglet "Informations personnelles", dans le fichier en pièce jointe, ne contient qu'une liste de nom pris au hazard et des numéros. Dans mon fichier principal, cet onglet "Informations personnelles" contient effectivement des informations personnelles, tel les numéros de téléphone, les dates de naissance, ce que j'ai retiré du fichier en pièce jointe.

J'ai utilisé un fichier similaire avec les mêmes informations très souvent dans le passé sans problème. SVP me dire quelles sont les informations personnelles que je dois retirer afin que je puisse retourner sur le Fil avec ma question.

Merci d'être aussi vigilant et de voir à ce que le Fil soit sécuritaire pour tous.

Bonjour Golfeur01

Désolé, mais je suis plutôt à cheval sur les données dites sensibles, et pour moi un prénom + nom l'est
https://www.cnil.fr/fr/definition/donnee-personnelle

Vous avez un outil sur ce forum qui permet d'anonymiser le fichier
https://www.excel-pratique.com/fr/utilitaires/anonymisation-donnees

Vous l'avez peut-être fait dans le passé,
mais les règles européennes sont de plus en plus stricte à ce sujet, c'est pour cela que je l'ai retiré

Merci de votre compréhension

Bonjour Bruno,

La vigilance n'est jamais de trop. Elle ne fait que réaffirmer les règles qui doivent être appliquées.

Merci pour l'explication. Est-ce que je peux remettre mon fichier sur le Fil en inscrivant que l'initiale du prénom ? Ce serait plus discret et sans danger pour la personne concernée ?

Merci encore pour ton aide

Bonjour Bruno,

Excellent cet outil d'anonymisation. Je viens de l'utiliser. Mon fichier devrait être conforme aux règles.

Merci encore

Désolé Bruno. J'ai enlevé les noms dans un tableau seulement et oublié les autres tableaux. SVP retire mon fichier. je vais me reprendre avec plus de précautions cette foi.

Pourtant ce n'est pas ma première fois sur le Fil.

Encore moi,

Cette fois j'ai bien utilisé l'anonymisation et ça devrait correspondre avec les règles du Forum.

10classeur1.xlsm (76.71 Ko)

Merci encore pour ton aide et surtout pour ta patience et compréhension.

Re,

Merci Golfeur01 Bon le problème reste entier

Moi qui ne suit pas golfeur, comment sait on la différence entre H. Triples et plus H. Simples

A+

Bonsoir BrunoM45,

Petite précision, Le fichier n'a rien à voir avec le golf. C'est un fichier qui traite les données d'une ligue de bowling.

H. Triple (Haut Triple) H. Simple (Haut Simple). Haut Triple est le total des 5 joueurs qui forment l'équipe après 3 parties. Haut Simple est le total des mêmes 5 joueurs après une seule partie. Ligue formée par des personnes de l'age d'or qui jouent en après midi pour le plaisir. J'administre le système informatique pour leur rendre service. Ça leur évite de s'occuper des données et de la comptabilité.

La source du H. Triple est la colonne BO qui reçoit ses données à partir d'une macro activée dans mon système. Les données en BO et BT sont toujours en Valeur. J'ai inscrit des valeurs au hazard en BO et BT.

La source du H. Simple est la colonne BT. Même information que BO.

Comme tu peux voir, la formule en BQ ne fait pas le travail s'il y a égalité en BS. Le nom en BQ4 ne devrait pas être le même qu'en BQ3. Comme je ne sais pas comment modifier ma formule afin que le nom de la deuxième personne qui a inscrit le 3000 s'inscrive en BQ4, je demande votre aide afin de modifier la formule ou de créer une macro qui fera le travail.

Merci beaucoup pour ton aide.

bonjour,

12classeur1-8.xlsm (94.37 Ko)

les 2 solutions,

* en formules : il faut ajouter 2 colonnes BP:BQ pour créer un classement avec des égalités et alors on peut rechecher les données avec le résultat de la colonne BQ

* avec une macro :

Sub Classement()
     Dim SCA, iA, A, iCol, aSCA, Out(), iO
     Set SCA = CreateObject("system.collections.arraylist")     'sorted list
     A = Sheets("données").Range("A3:BZ1003").Value     'les données >>> matrice
     For i = 1 To 2     '2 sortes de classement
          Select Case i
               Case 1: iCol = Range("BO1").Column: Set c = Sheets("Données").Range("CA3")     'classement 1 = H triple, coller en CA3
               Case 2: iCol = Range("BV1").Column: Set c = Sheets("Données").Range("CF3")     'classement 2 = H simple coller en CF3
               Case Else: MsgBox "erreur": Exit Sub     'normallement impossible d'arriver ici
          End Select

          SCA.Clear     'vider ce SCA
          For iA = 1 To UBound(A)     'boucle les données
               If Len(A(iA, iCol)) > 0 And IsNumeric(A(iA, iCol)) Then SCA.Add A(iA, iCol) + iA / 10000     'il y a un pointage pour ce classement = ajouter points + index/10.000
          Next
          SCA.Sort     'sorter croissant
          SCA.Reverse     'inverser ce sortage
          aSCA = SCA.toarray     'SCA >>> matrice
          ReDim Out(1 To UBound(aSCA) + 1, 1 To 4)     'preparer une matrice pour le résultat
          For iO = 1 To UBound(Out)     'boucle
               j = aSCA(iO - 1) * 10000 Mod 10000     'enlever la partie avec l'index
               Out(iO, 1) = A(j, 2)     'equipe
               Out(iO, 2) = A(j, 3)     'nom
               Out(iO, 3) = A(j, 1)     'numéro
               Out(iO, 4) = A(j, iCol)     'points x
          Next

          With c     'la cellule en haut et gauche pour coller
               .Resize(1000, 4).ClearContents     'vider cette plage
               .Resize(UBound(Out), 4).Value = Out     'coller les données
               .Resize(, 4).EntireColumn.AutoFit     'ajuster le largeur des colonnes
          End With
     Next
End Sub

Bonjour BsAlv,

Merci beaucoup pour les deux solutions. Je crois que la solution "Formules" sera la meilleur pour mes besoins.

Je te remercie et passe une excellente journée.

Un gros merci à BrunoM45 pour sa gentillesse et surtout sa patience. Continue ton excellent travail en tant que Modérateur.

Je ferme le dossier.

Rechercher des sujets similaires à "correspondre nom personne triple"