Sélectionner si 35 points

Bonjour encore besoin de vos lumières.

nous avons 2 feuille

la premiere c'est (Mes jeux)

et le 2éme c'est (Sélection)

commençons par le 2éme (Sélection)

nous avons en E9:M9

plusieurs chiffres

mission 1

il devra chercher le chiffre commençant par 35

si il y a alors il retournera sur la feuille 1 (Mes jeux)

et mettre le n° de la course et le cheval

la il y a n'y a pas de chiffre 35 don il ne met rien en feuille 1

on continue avec la réunion 2

en E18/M18

Pas de chiffre 35

on passe a la réunion 3

en E26/M26

la il y a bien un chiffre 35

en G26

comme sur la photo ci dessous

01

alors on vas sur la feuille 1

on vas a la réunion 3

on indique la course qui et le 3 et le cheval qui et le 3

comme sur la photo ci joint

01

réunion 4 en E34/M34

pas de chiffre 35

on passe a la réunion 5

il y a bien le chiffre 35 et 2 fois en plus

en E42 et en H42

Alors on vas sur la feuille 1

et on vas dans la réunion 5

et on notes les informations

comme sur la photo ci jointe

01

idem pour les autres courses

réunion 6 rien

réunion 7 il y a un 35 en H58

On vas sur la feuille 1 et on note l'infos

comme sur la photo

01

voila réunion 8 et 9 rien

merci d'avance pour votre aide

18classeur1.xlsx (14.67 Ko)

si vous avez des questions n’hésitez pas

Salut Ilien,

oui, j'en ai :

  • il t'arrivera, j'imagine d'apporter des modifications aux cotes ?
  • peut-il y avoir plus de 2 jeux par réunions à + 35 ?
  • tu veux un bouton RESET pour un nouvel encodage ?

A+

bonjour

sur la même réunion non pas plus de 2 jeux a 35

oui je veut bien un bouton reset

merci pour ton aide

Salut ilienfrancois,

J'ai commencé la nuit passée et le fichier est déjà bien avancé.

J'ai du harmoniser tes blocs de données, question look et surtout, efficacité du code.

je regarde ça ce soir. Le fichier n'est pas sur cet ordinateur!

A+

merci beaucoup pour ton aide

n'est t'il pas trot tard pour mettre ce bouton pour effacer

ce sera plus esthétique.

suprimer

Salut ilienfrancois,

Je ferai ce que je peux...

Précision : quand je dis RESET, je parle du tableau récapitulatif, évidemment, et du tableau des réunions et cotes, hormis les formules, bien sûr!

OK ?

A+

oui bien sur merci d'avance

Salut ilienfrancois,

OK, ça devrait être bon!

Le code se base :

  • évidemment sur ta mise en page actuelle : tout changement impliquera, tu t'en doutes, une adaptation des références lignes-colonnes. Normal...
  • sur la taille de fonte actuelle, soit 11.
Fonctionnement :
  • si un n° de cheval n'est pas renseigné, impossible d'encoder une cote ;
  • quand tu encodes une cote :
* si valeur >= 35 et taille fonte 11 = nouveau jeu qui s'affiche en 'Jeux' avec un "tri" : le n° de course plus petit en ligne 8 -> taille fonte cellule COTE = 12

* si valeur <35 et taille fonte 12 = effacement en 'Jeux' avec remontée éventuelle du jeu de la ligne 10 en ligne 8 -> taille fonte cellule COTE = 11

- le bouton "Remove" est placé, vaille que vaille, dans la feuille 'Jeux' = effacement du tableau en 'Jeux' et les lignes "Course-Cheval" en 'Sélection' avec rétablissement général de la taille de fonte à 11.

Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim iRow%, iCol%, iC1%, iC2%, sCol$
'
If Target.Row Mod 8 = 5 And Target.Offset(-1, 0) <> "" Then
    iC1 = Target.Offset(-2, 0)              'course
    iC2 = Target.Offset(-1, 0)              'cheval
    iCol = Cells(Target.Row - 1, 2) + 2     'colonne réunion 'Mes Jeux'
    sCol = Chr(64 + iCol)                   'lettre colonne réunion dans 'Mes Jeux'
    With Worksheets("Mes jeux")
        If Target.Font.Size = 12 Then
            iRow = IIf(iC1 = .Cells(8, iCol) Or .Cells(8, iCol) = "", 8, 10)
            If Target.Offset(3, 0) < 35 Then
                If iRow = 8 Then .Range(sCol & 8).Resize(2, 1).Value = .Range(sCol & 10).Resize(2, 1).Value
                .Range(sCol & 10).Resize(2, 1).Value = ""
            End If
        End If
        If Target.Offset(3, 0) >= 35 And Target.Font.Size = 11 Then
            iRow = IIf(iC1 < .Cells(8, iCol) Or .Cells(8, iCol) = "", 8, 10)
            If iRow = 8 Then .Range(sCol & 10).Resize(2, 1).Value = .Range(sCol & 8).Resize(2, 1).Value
            .Range(sCol & iRow).Resize(2, 1).Value = Target.Offset(-2, 0).Resize(2, 1).Value
        End If
        Target.Font.Size = IIf(Target.Offset(3, 0) >= 35, 12, 11)
    End With
End If
'
End Sub

A+

29ilien-courses.xlsm (168.41 Ko)

Bonjour et merci

mais pourquoi il n' y a rien sur le feuille jeux aucun résultat ?

pourtant sur la feuille sélection tous mes jeux son rempli ?

Salut ilienfrancois,

juste : j'ai pensé puis oublié de te demander comment tu recevais tes données...

Dans cette version, je postule que tu dois encoder manuellement tes cotes!

Je vais te faire une commande de calcul global.

Question : reçois-tu tes données par lot ou dois-tu les encoder manuellement ?

A+

merci

je le fais manuellement

Dans ce cas, en attendant le correctif, re-encodes les cotes à plus de 35 et ça ira...

A+

je préfère attendre le correctif

merci pour ton aide

Mais, non, c'est prévu d'origine avec ce fonctionnement !

Ça ne risque pas d'exploser !

merci mais je préfère attendre la correction

Mais, quel têtu, ce ilienfrancois !

Même fonctionnement :

  • encodage manuel des cotes qui enclenche le calcul < 35 > : tu n'y couperas pas, mon ami !
  • un double-clic sur la feuille 'Sélection' refait un calcul global pour toute la feuille ;
  • tu peux aussi modifier le n° du cheval en cas d'erreur : ce sera pris en compte ;
  • ATTENTION : si, par erreur, tu vides la cellule, celle-ci prendra la valeur 10 (cheval ou cote)... Bon? Pas bon? Que faire, sinon?

A tester en situation réelle...

A+

32ilien-courses.xlsm (165.50 Ko)

merci pour ton aide

je te souhaite un joyeux noël

Rechercher des sujets similaires à "selectionner points"