Signaler

Réalisation d'horaire de passage (automatique) épreuve sportive [Résolu]

Posez votre question olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - Dernière réponse le 20 avril 2017 à 22:02 par eriiic
Bonjour,

dans un classeur excel a l’intérieur duquel ce trouve entre autre une feuille "Horaires",
je cherche une solution pour créer (automatiquement éventuellement via une macro) un horaire de passage (colonne K) pour les candidats inscrits (uniquement entre 1 et 40) et de les incrémenter de la durée prévue de l'épreuve (cellule K9)
avec la possibilité en cour d'épreuve d'inclure une pause pour les juges (durée fixée en K10)

si quelqu'un avait une idée a me suggérer cela me rendrait un très grand service.
Merci d'avance a vous tous.

http://www.cjoint.com/c/GCzmKHUk0CD

Afficher la suite 
Utile
+0
plus moins
Bonjour,

en K13 :
=SI(B13="Pause";"";SI(B12="Pause";K11+$K$10;SI(B13="";"";K12+$K$9)))

en A12 :
=SI(B12="pause";"";MAX($A$11:A11)+1)

Saisir la pause en B à la place d'un cavalier.
eric

fichier : http://www.cjoint.com/c/GCznIULB4NH
En essayant continuellement, on finit par réussir. 
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 25 mars 2017 à 15:34
Merci pour ton aide.
cela me donne une piste a explorer.
Je aperçois que j'ai pas été suffisamment claire dans mon explication:

1° l'idée de départ est que la feuille "Horaires" récupère les information de la feuille "Info+Engagés" afin d'éviter une double saisie.

2° l'insertion d'une ligne pause dans la feuille 'Horaire' ne pause pas de problème en soit mais comment faire pour pour que cela ne perturbe pas la récupération des 'info+Engagés' situés après la "pause".

3° Dans l'exemple que tu m'as joint le cavalier 5 passe a 08:32 comme son épreuve dure 00:08 min il termine donc a 08:40 les juges ont une pause de 00:10 min le candidat 6 doit donc passer a 08:50 et non 08:42.

4° Dans ton exemple pourquoi le calcule s'interrompt il après le N° 8 ?
Et enfin comment faire pour que ce calcul d'horaire s’arrête après le dernier candidat ( après le 10 si il sont 10 après le 30 si il sont 30 etc.....?)

je sais que cela fait beaucoup de question en 1 fois..
mais si tu avais 1 ou 2 éléments de réponse je suis preneur.

encore merci pour ton aide.

Olis
Répondre
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 25 mars 2017 à 15:55
1) j'aurais tendance à dire pourquoi une 2nde feuille alors ?
Tu n'y as que Robe en moins. Elle présente peu d'intérêt, autant ajouter un champ horaire à la 1ère non ?
2) propose si tu as une autre idée pour ce fonctionnement
3) c'est ce que j'avais fait en premier jet, la formule est plus simple :
=SI(B12="Pause";K12+$K$10;SI(B13="";"";K12+$K$9))

4) pourquoi le calcule s'interrompt il après le N° 8 ?
il ne s'interrompt pas
comment faire pour que ce calcul d'horaire s’arrête après le dernier candidat
C'est ce que ça fait

Répond déjà aux 1 et 2, on verra ensuite pour compléter et voir si on passe en vba
Répondre
Donnez votre avis
Utile
+0
plus moins
Re bonjour Eric

l'idée de départ est que la feuille "Horaires"
l’insertion d'une feuille spécifique me semble indispensable car la feuille 'Info+Engagés' renvoie des valeurs vers les 40 feuilles 'Cav' ainsi que dans la feuille 'Résultats' et l'insertion d'une ligne "pause" perturberais l'ensemble du classeur ou alors il faudrait revoir tout le classeur. Sachant qu'en plus j'ai 101 classeurs qui répondent a des niveaux de compétitions différentes.

l'insertion d'une ligne pause
Malheureusement étant plus que limité dans l'utilisation d'Excel, je n'ai pas grand chose a proposer. C'est la raison pour laquelle je sollicite ton aide.

Dans l'exemple que tu m'as joint le cavalier 5 passe a 08:32
Je pense, grâce a toi, avoir solutionné le problème de la manière suivante.

=SI(B13="Pause";"";SI(B12="Pause";K11+$K$9+$K$10;SI(B13="";"";K12+$K$9)))

Dans ton exemple pourquoi le calcule s'interrompt
Tu as tout a fait raison le calcul ne s’interrompt pas. je n'ai pas fais attention au fait qu'il fallait que la colonne B soit remplie pour que le calcul se poursuive.

En résumé il ne persiste plus que le problème N°2 pour lequel je sollicite de l'aide.
Ainsi qu'une autre chose que j'avais oublier. Il peu arriver que la personne qui gère les horaires de passage décide de ne pas forcement faire passer les cavaliers selon leur n° de dossard (Ex si un cavalier a 2 chevaux dans la même épreuve, si ces n° de départ sont 1 et 2 cela est matériellement impossible la personne en charge des horaires le ferra donc passer en 1 et 15 par exemple)

Quoi qu'il arrive tous les éléments que tu m'a apportés m'on été très utile.

Cdt Olis
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 26 mars 2017 à 13:59
Non c'est ce que je constate dans l'exemple ci joint lorsque que dans la feuille 'horaires' je double clic sur Jean (n° 5) et que le fais passer en position 14
http://www.cjoint.com/c/GCAjpWX0Pyg

Pour les pauses
Sachant que le nombre d'engagés dans une épreuve est en 1 et 40 maxi, le nombre de pause pour les jurys varie entre 0 et 3 Maxi. Elle sont disposées le plus intelligemment possible par l'organisateur mais sans règles stricte.


En tout cas merci et bonne après midi.

Olis
Répondre
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 26 mars 2017 à 14:04
Un cheval peut-il apparaitre 2 fois également ou c'est totalement exclu ?
Répondre
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 26 mars 2017 à 16:32
Cela est effectivement possible dans un niveau d'épreuve appelé "Club" destiné au enfants et cavaliers débutants et également en "Para équestre" destiné aux personnes en situation de handicap.
mais interdit dans les autres niveau "Amateur" et "Pro" pour une question de respect animal.

donc on peu dire que Oui c'est possible.
Répondre
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 28 mars 2017 à 00:17
Bonjour,

Je ne t'oublie pas mais un peu occupé en ce moment.
Demain sans doute des news.
eric
Répondre
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 28 mars 2017 à 11:31
Pas de souci C'est déjà super sympa d'accepté de t'en occuper.

Olis
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour,

désolé pour le contretemps...
Donc j'ai fait les principales modifs. Les voici pour te faire patienter mais il va falloir que je me relise, il y aura peut-être des ajustements ultérieurs.

Plus de formule sur la feuille Horaires, je ramène tout par macro.
Du coup peut-il y avoir des corrections apportées sur la feuille Engagés qu'il faille reporter dans Horaires ? Par exemple simplement une correction orthographique.
https://mon-partage.fr/f/Ol2exhS0/
eric
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 30 mars 2017 à 18:33
Bonjour, ça a l'air parfait...
mais j'aurais quelques questions:

1° à l'ouverture du fichier, excel me dit que la mise à jour des liens a été désactivée.
avec 1 ordi j'ai réussi à les activer mais avec un 2° ordi impossible. Quelle peut en être l'origine à ton sens?
2° Le travail que tu as réalisé averti bien l'utilisateur de la proximité de 2 départs trop proches pour un même cavalier. Est il possible facilement qu'il avertisse également de 2 départs trop proches pour un même cheval.
3° Comment dois je procéder pour que le calcul des heures de passage s’arrête au dernier couple (exemple: 14 si il y a 14 engagés etc...)

Pour finir

L'objet de ce travail est de le donner gratuitement aux petits centres équestre de France afin de les aider à organiser des compétitions dans cette discipline et cette partie comptabilité est pour eux un véritable frein.

1° Pour les utilisateurs cet outil doit être facilement utilisable par des novices d'excel, et c'est la raison pour laquelle la quasi totalité des feuilles sont verrouillées.
Si je protège la feuille 'horaires' par mot de passe le déplacement d'un cavalier devient impossible. Y a t'il moyen d'y remédier ?

2° Pour moi Ce travail regroupe 101 classeurs correspondant à des niveaux de difficulté différents.Je vais donc devoir rajouter cette feuille 'Horaires' et les macros qui s'y rattachent aux 100 classeurs restants
J'ai identifié une macro 'init' Lorsque je vais dans l'onglet développeur Macros Modifier je l'a vois bien devant les 4 miennes et j'ai également identifié 3 autres macros; 'feuil43.ControleDepart' 'feuil43.Horaires' et feuil43.rafraichir mais où recopier ces 3 dernières lors des mises à jour des classeurs restants car je ne sais pas où les mettre sinon à la suite du premier groupe de macro (init et les 4 miennes)?

Si tu n'as pas le temps ce que je peux comprendre, pas de problème, rien est urgent pour le moment... en tout cas je te remercie encore par avance!!!

cordialement
Olis
Répondre
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 30 mars 2017 à 19:35
Si l’intégration de cette nouvelle feuille dans 100 classeurs s’avère trop longue et compliqué il me reste la solution de créer un classeur a part ou les utilisateurs apporteront les données par copié coller.
Répondre
Donnez votre avis
Utile
+0
plus moins
Je regarde ça au plus vite malheureusement pas avant demain fin d'après midi (journée de boulot bien pourrie) En tout cas je te remercie par avance.
Cela fait plusieur fois que je fais appel à la communauté CCM et franchement je vante vos mérites régulièrement vous êtes tout au Top.
Cdt Olis
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 18 avril 2017 à 00:47
Bonjour,

Je faisais référence au post 39 :
PS : on peut prévoir des écarts de départ minimum différents pour les cavaliers et les chevaux si les contraintes ne sont pas les mêmes.
Tu dis si ça peut être intéressant.

resté sans réponse...
Même si pas intéressant je l'ai ajouté. A fixer dans la feuille Accueil en P2:P3.
Une modification entraine une ré-évaluation de toutes les feuilles. Contrôler visuellement les nouvelles alertes sur chaque.

Le seul problème est que lorsque tu écris:
' nom des feuilles horaire
Const nomF As Boolean = True
' True : "nom de l'épreuve"
' False : "Epreuve x"
j'ai beau y mettre toute mon attention cela ne signifie absolument rien pour moi

Ne pas chercher du compliqué.
Si tu laisses
Const nomF As Boolean = True
les feuilles s'appellent du nom de l'épreuve,
si tu mets
Const nomF As Boolean = False
les feuilles s'appellent Epreuve 1, Epreuve 2, etc comme tu l'avais demandé.

Donc j'ai complété le nommage des feuilles.
Le dico est à compléter en Feuille Accueil L:M (ne rien y mettre d'autre).
Tu peux aussi y mettre des mots à supprimer en laissant vide la colonne M. Par exemple "des " (avec un espace). "Grand Prix des prairies" s’abrégera "Gp prairies", ça fait 4 car. de plus de gagnés.
"IV" remplacé par "IV ". Sinon "vive" deviendrait "v4e" qui ne veut rien dire. Se méfier des abréviations pouvant être des parties de mots.
Tu peux masquer ensuite ces colonnes L:M

Si plusieurs courses amènent au même nom de feuille, la suivante se verra ajouter un 2 à la fin, puis un 3, ..., jusqu'à 9.
Et s'il y a un 10e doublon (il fallait prévoir le cas même si ça n'arrive jamais) une boite s'ouvre pour demander le nom à mettre.
Pas vraiment testé à fond vue l'heure, je te laisse cette partie
Et j'espère ne pas avoir écrit tout ça pour rien ;-)
https://mon-partage.fr/f/8rgNZuJA/
eric
Répondre
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 18 avril 2017 à 22:30
Bonsoir Eriiic
Si une chose est sur c est que tu n'as pas écrit ca pour rien. J ai fait un essai rapide et tout à l aire de fonctionner merveilleusement et idéalement bien. Je ferai d autres tests demain après midi.
Le seul truc qui m'exaspère c est que je ne comprend pas comment cela fonctionne. Je n ai rien vu dans la macro qui fait référence au abréviations des mots récurrents.

Bref t es au TOP Eriiic
Cdt
Olis
Répondre
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 18 avril 2017 à 23:06
C'est dans la Sub nommerFeuille()
    With Sheets("Accueil")
dict = .[L2].Resize(.Cells(Rows.Count, 12).End(xlUp).Row - 1, 2).Value
End With
récupère la liste dans un tableau

    For lig = 1 To UBound(dict)
epreuve = Replace(epreuve, dict(lig, 1), dict(lig, 2))
Next lig
remplace les mots par leur abréviation.

eric
Répondre
olis8319 49Messages postés samedi 21 janvier 2017Date d'inscription 20 avril 2017 Dernière intervention - 20 avril 2017 à 19:33
Bonjour Eriiic
j'ai enfin trouver le temps de tester le classeur 'Horaire de passage'
tout fonctionne bien:
les noms de feuille abrégés
les alertes départ trop proches cavaliers et chevaux
l'insertion des pauses

et la modification des temps cavalier chevaux en colonne P2:P3 de la feuille 'accueil'

seul petit détail a chaque fois que je veux modifier un écart Excel m'annonce une erreur 1004 (la méthode sélect de l'objet worksheet a échouée)
mais bizarrement il prend quand même en compte la modification.

Cdt
Olis
Répondre
eriiic 20445Messages postés mardi 11 septembre 2007Date d'inscription ContributeurStatut 28 avril 2017 Dernière intervention - 20 avril 2017 à 22:02
Bonjour,

La prochaine fois soit plus précis :
sur telle feuille, telle cellule je saisi ça et erreur 1004 sur telle ligne de code (celle surlignée en jaune)

Oui, petite erreur de ma part, il était tard ;-)
Dans ThisWorkbook ,
Private Sub App_SheetChange(ByVal sh As Object, ByVal Target As Range)
remplacer :
sh2.Select
par :
sh2.Activate


Et pour faire bonne mesure, 4 lignes plus bas remplacer pour avoir :
Sheets("Accueil").Activate
eric
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !