Menu

Excel 2003 Renvoyer une heure sur créneau horaire [Résolu]

Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
- - Dernière réponse : eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
- 22 août 2018 à 15:45
Bonjour,

Pourriez-vous m'aider svp car je suis braiment bloquée.
La semaine dernière j'ai eu une réponse à cette demande :
--------------------------------
"Bonjour,

Pourriez- vous svp me dire si ceci est possible et comment :
J’ai une colonne A liste des personnes concernées
Colonne B une heure d’arrivée pour chaque personne
Colonne D sur feuille 2 une liste de plages horaires : [09h00 - 10h00[ [10h00 - 11h00[ .... 16h30 - 17h00]

Je souhaiterais faire correspondre le résultat du créneau horaire avec l’heure d’arrivée dans la colonne C de mon tableau.

Merci par avance de votre réponse."
----------------------------------
Vaucluse a été super en m'apportant cette réponse qui fonctionne sur excel 2016 :

" Bonjour
voyez si vous pouvez adapter ça et revenez si problèmes
https://mon-partage.fr/f/MSW5xsx9/
crdlmnt "

-----------------------------------------

Cependant, devant travailler sur Excel 2003, j'ai constaté ce jour que cette formule ne fonctionne pas sur Excel 2003.
Voilà la formule qui apparait dans la cellule :
=_xlfn.IFERROR(INDEX(Listes!$N$2:$N$8;EQUIV(Suivi!M2;Masquer!$A$2:$A$9));"")
et ce que ça donne :
#NOM?

Pourriez-vous SVP me dire s'il existe une solution pour Excel 2003 et comment ?

Je vous remercie par avance.





Afficher la suite 

4 réponses

Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
5555
0
Merci
Bonjour,

oui, 2003 ne connait pas Esterreur() :
=SI(ESTERREUR(EQUIV(E2;$B$2:$B$10));"";INDEX($A$2:$A$10;EQUIV(E2;$B$2:$B$10)))

eric
Commenter la réponse de eriiic
Messages postés
24211
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 juillet 2019
4681
0
Merci
Bonjour
votre est en anglais ou en français?
en anglais:
=IFERROR(INDEX(Listes!$N$2:$N$9;MATCH(Suivi!M2;Masquer!$A$2:$A$9));"")
si bien entendu , Listes Suivi Masquer sont bien les noms de vos feuilles
de plus mieux vaut avoir le même nombre de ligne dans tous les champs (ici, j'ai transformé $N$8 en $N$9)

par contre je ne suis pas certain que IFERROR (ou SIERREUR) fonctionne avec Excel 2003
vous pouvez alors écrire:
en français
=SI(NB.SI(Masquer!$A$2:$A$9;Suivi!M2);INDEX(Listes!$N$2:$N$9;EQUIV(Suivi!M2;Masquer!$A$2:$A$9);"")
et en anglais
=IF(COUNTIF(Masquer!$A$2:$A$9;Suivi!M2);INDEX(Listes!$N$2:$N$9;MATCH(Suivi!M2;Masquer!$A$2:$A$9);"")

crdlmnt

eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
5555 -
Sur le fichier fourni si.
C'est ton adaptation qui est mauvaise. Et c'est sans doute pareil pour la proposition de vaucluse
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
> eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
-
Ok je me replonge dedans et je vous redis
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
> eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
-
Ok ta formule fonctionne!!! ;-) mais là je suis sur excel 2016 je dois vérifier demain matin sur Excel 2003.
Je vais essayé aussi celle de Vaucluse en portant plus de vigilance sur les feuilles et je vous tiens au courant.
Merci encore pour votre persévérance face à mon niveau d'Excel!
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
> eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
-
Bonjour Eriiic,

Oui ta formule fonctionne!! ;-) Autant pour moi! Merci beaucoup!!!!
Bonne journée à toi
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
> eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
-
Bonjour Eriiic et Vaucluse,

Je me suis vite emballée. Je suis vraiment désolé de vous prendre encore du temps. Pourriez-vous m'aider SVP ? Car j'ai retourner les choses dans tous les sens sans trouver la bonne formule.

La formule d'Eriiic fonctionne! Seulement je n'avais pas réalisé que si les tranches horaires changent, la formule ne fonctionne plus pour les nouvelles tranches.
C'est à dire que les horaires du matin correspondent aux tranches horaires [09:00 - 10:00], alors que l'après-midi c'est [13-30 - 14:30].
Pour être plus précise j'ai adapté le tableau de Vaucluse ci-joint :
https://www.cjoint.com/c/HHwi1LZlbTd

Merci beaucoup pour le travail que vous faites!!!
Commenter la réponse de Vaucluse
Messages postés
24211
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 juillet 2019
4681
0
Merci
vérifiez:
  • que les noms de feuille que vous utilisez soient bien les bons, soit:

Liste Suivi Masquer
  • écrivez votre formule en français ou en anglais selon votre Excel, mais pas dans les deux langues comme votre message ci dessus
  • et la formule ne peut pas commencer par _xlfn

et si ça ne va pas, déposer un modèle conforme, éventuellement en bidouillant les infos mais en conservant la structure
crdlmnt



Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
-
Ok je me replonge dedans et je vous redis
Si vraiment je mettrai le fichier anonymisé en lien
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
-
Bonjour Vaucluse,

La formule ne fonctionne pas mais à mon avis c'est moi qui doit faire une erreur mais je ne parviens pas à trouver où. La formule d'Eriiic fonctionne donc je vais utiliser celle-ci.
Merci encore pour votre aide et je vais garder également la formule valable pour Excel 2016.
Bonne journée à vous!
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
-
Bonjour Vaucluse,

Je me suis vite emballée. Je suis vraiment désolé de vous prendre encore du temps. Pourriez-vous m'aider SVP ? Car j'ai retourner les choses dans tous les sens sans trouver la bonne formule.

La formule d'Eriiic fonctionne! Seulement je n'avais pas réalisé que si les tranches horaires changent, la formule ne fonctionne plus pour les nouvelles tranches.
C'est à dire que les horaires du matin correspondent aux tranches horaires [09:00 - 10:00], alors que l'après-midi c'est [13-30 - 14:30].
Pour être plus précise j'ai adapté le tableau de Vaucluse ci-joint :
https://www.cjoint.com/c/HHwi1LZlbTd

Merci beaucoup pour le travail que vous faites!!!
Commenter la réponse de Vaucluse
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
5555
0
Merci
Bonjour,

Bon, j'ai simplifié avec une formule unique mais matricielle :
à valider avec Shift+Ctrl+Entrée.

Tu es sensée saisir des heures appartenant à une tranche existante, sinon ça te ramène celle qui précède.
Prend l'habitude d'écrire tes heures sous la forme 8:00 et non 8h00, ça alourdit les formules inutilement.
https://www.cjoint.com/c/HHwjk4mWoqM
eric

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
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
-
Re bonjour Eriiic,

Je suis désolé de te faire tourner en bourrique! Je dois t'avouer que je n'osais même plus de redemander plus de précision!

Je ne m'y connais absolument pas en matrice mais je crois comprendre que le mot "GAUCHE" dans la matrice renvoie à la colonne de plage qui est située à l'extrême gauche.
Seulement en réalité mon tableau ne se présente pas comme ça et j'osais pas le mettre en lien car il y a pleins d'infos confidentielles de type n°de sécu....
Donc si "gauche" correspond à ce qui a à gauche ,ça ne marche pas sur mon tableau.
Heures + Créneaux Horaire (à calculer) sont sur feuille appelée "Suivi" , colonne M et N
Les plages horaires de référence sont sur une feuille appelée "liste" colonne M (où j'ai toutes mes les listes pour mes différents calculs
Et j'avais ajouté la page "Masquer" pour les valeurs d'heures.

Donc afin d'arrêter de te faire tourner en bourrique (encore milles excuses!!) je met le tableau en lien ci-dessous (avec les autres cellules vides) : https://www.cjoint.com/c/HHwkQQQiysd

On est 2 à travailler sur ce tableau et vraiment on ne trouve pas!

Merci ENCORE!!!
eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
5555 -
Il faut toujours mettre un fichier avec la structure exacte (anonymisé) , surtout si tu as du mal à adapter.

Je ne m'y connais absolument pas en matrice mais je crois comprendre que le mot "GAUCHE" dans la matrice renvoie à la colonne de plage qui est située à l'extrême gauche.
Matrice parce qu'on va prendre toute la plage de tes créneaux et non une seule cellule.
Ensuite on va chercher où ta saisie s'insérerait dans la matrice.

En fait Gauche() prend les x caractères de gauche d'une chaine.
Maintenant tu ne veux plus ça, mais 5 caractères à partir du 2nd, soit :
STXT(ta_chaine;2;5)


Ta formule devient donc :
=INDEX(Listes!$N$2:$N$8;EQUIV(M2;--SUBSTITUE(STXT(Listes!$N$2:$N$8;2;5);"h";":")))

toujours à valider avec 3 doigts

On est bien d'accord qu'actuellement si tu saisis 12:30 qui n'est pas dans une tranche tu obtiendras la précédente : [11h00 - 12h00]
eric
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
> eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
-
Ok pour "On est bien d'accord qu'actuellement si tu saisis 12:30 qui n'est pas dans une tranche tu obtiendras la précédente : [11h00 - 12h00] ". Je ne devrais pas avoir besoin de cette tranche horaire. Merci

Rachel
Rachellaaa
Messages postés
24
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
31 août 2018
-
Bonjour Eriiic,

ça fonctionne à la perfection! Dorénavant, je mettrai le tableau complet anonymisé dés le début! Encore mille excuse et mille merci!!
Vous faites vraiment un travail considérable et avec une rapidité de réponse dingue!

Bonne journée à toi!
eriiic
Messages postés
22779
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 juillet 2019
5555 -
Merci :-)
de même
Commenter la réponse de eriiic