je pense que ma question est simple

paulise

XLDnaute Nouveau
Bonjour
je viens de lire certains des posts de ce forum (je suis nouvelle du jour) et je pense que ma question va vous paraitre très simple, mais moi je patauge depuis une bonne heure, j'apprécierai donc votre aide

j'ai sur une page nommée "COT" des cotations de performances (cotées de 1 à 40). j'ai plusieurs tableaux côte à côte avec 5 épreuves (toujours les mêmes) pour différents stades pubertaires (A0F, A1F, A2F..., A0M, A1M, A2M...)
j'ai ensuite une autre page où mes collègues devront saisir leurs performances en renseignant pour chaque enfant son nom, son stade pubertaire et les performances dans les 5 épreuves. Je voudrai calculer la cotation correspondante à chaque épreuve en fonction du stade pubertaire.
C'est ça qui me pose problème : je sais chercher dans une colonne mais je ne sais pas comment intégrer la recherche préalable de la colonne en fonction de la donnée saisie dans une cellule.

J'espère avoir été claire
Je vous remercie par avance pour toute l'aide que vous m'apporterez (si possible en n'utilisant que des fonctions)
Céline
 

porcinet82

XLDnaute Barbatruc
Re : je pense que ma question est simple

Salut,

Tout d'abord bienvenue a toi sur ce forum :).
Pour ta question, je ne suis pas sur de tout saisir, je pense qu'un petit bout de fichier (sans donénes confidentielles) avec un exemple de ce que tu as et de ce tu souhaites permettrait de mieux comprendre tes besoins.

@+
 

paulise

XLDnaute Nouveau
Re : je pense que ma question est simple

Voilà je joins le fichier sur lequel je travaille
dans la page "saisie des données", vous verrez dans la cellule D9 la donnée qui donne le stade pubertaire de l'athlète
ensuite on a toutes ses performances et je voudrai à droite de ces colonnes donner la cotation de chaque performance qui se trouve sur l'autre page
j'espère que ce sera plus simple...
quoiqu'il en soit merci de cette réponse si rapide !
Céline
 

Pièces jointes

  • Grilles Eva 1000 Minimes.xls
    30.5 KB · Affichages: 99

porcinet82

XLDnaute Barbatruc
Re : je pense que ma question est simple

re,

Je viens de jeter un oeil a ton fichier. Je comprends bien le but, par contre, je ne saisie pas tres bien comment tu détermines la ligne sur laquelle il faut lire la cotation, d'autant qu'apparement, selon l'épreuve, tu ne lis pas la meme ligne.
Si tu pouvais m'éclairer un peu sur ce point...

@+
 

benalex241286

XLDnaute Nouveau
Re : je pense que ma question est simple

Bonjour à vous,

Je pense que justement, pour chaque type de "test", les performances de la personne peuvent varier et donc la valeur COT va varier et donc la ligne va elle aussi varier.
Ainsi, pour le LAR la personne fait 1110 ce qui correspond a un COT=30 ... (les COT sont indiqués à la première colonne.)
Ensuite pour le DV, elle fait 5198 ce qui correspond soit à COT=30 (si on prend la valeur la plus proche) soit à COT=29 (si on arrondi à l'infèrieur) .....

Voilà ce que j'ai compris de mon côté. Pour l'arrondi c'est à l'auteuyr du sujet de te dire comment il veut arrondir.
++
 

porcinet82

XLDnaute Barbatruc
Re : je pense que ma question est simple

re, Salut benalex,

Oula, la fatigue commence a se faire sentir en ce vendredi aprem ,je n'avais pas percuter sur le COT, la ca va mieux.
Par contre, comment s'obtient le le 1230 pour COT VAR puisque LAR vaut 1110 et COT 30, il doit y avoir un calcul...
Et effectivement la question de l'arrondi est également importante, bien vue (l'aveugle :D) !!!

Je vais prendre mes cachets et je reviens...

@+
 

benalex241286

XLDnaute Nouveau
Re : je pense que ma question est simple

Re,

pour tout te dire c'est toi qui m'a fait percuter qu'il y avait une colonne COT lol. Suite à ton interrogation j'ai fouiné et je suis tombé dessus par "hasard". Du coup j'ai figé les volets en laissant apparaître la colonne c'est bien plus lisible.

J'essaye de créer une fonction pour répondre à ces besoins mais vu que je débute c'est dur mais ça permet de progresser.

++
 

porcinet82

XLDnaute Barbatruc
Re : je pense que ma question est simple

re,

Bon me revoilou avec une solution qui a l'air de fonctionner a peu pres, mais je te laisse le soin de la tester ;).
Voici l'usine a gaz :
Code:
Sub test()
Dim i%, j%, p%, n%
Sheets("saisie des données").Select
With Sheets("COT")
    For i = 9 To Range("A65536").End(xlUp).Row
        For n = 5 To 10
            For j = 2 To .Range("IV2").End(xlToLeft).Column
                If .Cells(1, j).Value = Cells(i, 4).Value Then
                    For p = 3 To 34
                        If .Cells(p, j + n - 5).Value = Cells(i, n).Value Then
                            Cells(i, n + 6).Value = .Cells(p, 1).Value
                            Exit For
                        Else
                            Select Case n
                            Case 5, 6, 9, 10
                                If .Cells(p, j + n - 5).Value < Cells(i, n).Value Then
                                    Cells(i, n + 6).Value = .Cells(p, 1).Value
                                    Exit For
                                End If
                            Case Else
                                If .Cells(p, j + n - 5).Value > Cells(i, n).Value Then
                                    Cells(i, n + 6).Value = .Cells(p, 1).Value
                                    Exit For
                                End If
                            End Select
                        End If
                    Next p
                End If
            Next j
        Next n
    Next i
End With
End Sub

Quelques explications tout de même :
- le i boucle sur les individus dont tu cherches la cotation (feuille saisie des données)
- le n boucle sur les diverses cotations recherchées (de LAR à 5BDS)
- le j boucle sur la les stades pubertaires de la feuille COT (jusqu'a trouver celui qui correspond a l'individu i)
- le p boucle sur la colonne apres que le stade pubertaire est trouvé dans la boucle précédente

Enfin, en gros la macro boucle sur les individus de la feuille "saisie des données" pour lesquels je cherche leur 5 cotations.
Pour ce faire, je boucle sur la feuille "COT" jusqu'a trouver le stade pubertaire qui lui correspond et enfin je cherche dans la colonne correspondant a la cotation, ou se trouve la valeur de la performance

Voili, voilou,

@+
 

benalex241286

XLDnaute Nouveau
Re : je pense que ma question est simple

Bonjour à toutes et tous,

j'ai une petite question (sur tout les sujets où j'interviens je me sens obliger de poser des question ;-) ). Je voudrais savoir pourquoi bien souvent vous (je parle des membres les plus experts du forum) utilisés plutôt des sub plutôt que des fonctions. Je demande ça car cette fois encore j'essayais de partir sur une fonction pour aider notre amie Paulise.
Attention, je ne veux pas faire un gros débat mais juste savoir en 2 mots pourquoi (donc je ne refais pas de topic pour ça (c'est un peu pour me justifier auprès de spitnolan08)

Dès que j'ai fini de réinstaller Office, je test pour voir comment ça fonctionne

Merci à vous de m'éclairer
et bon gros week end (ensoleillé pour moi ;-)
 

porcinet82

XLDnaute Barbatruc
Re : je pense que ma question est simple

Salut,

Bon, je ne sais pas si je suis le mieux placé pour répondre, mais j'utilise quasiment jamais de fonction car je les trouves peu pratique. Si tu l'utilises de la manière qu'une formules, il faut que tu tapes quelques chose dans les cellules, et je ne suis pas adepte, c'est d'ailleur pour ca que je ne me mets par aux formules ;).
Et puis je suppose que tu veux utiliser des fonctions pour leur passer des paramètres. Perso, je ne suis pas assez calé pour m'en servir...

Voili, voilou,

@+
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz