|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour à tous,
Je travail dans une base de donnée dans laquelle différents champs sont remplis. Grace à une formule le contenu de certains champs comme par exemple la date et heure sont encodé de manière automatique lorsque le champ parking est remple. J'aimerais savoir comment puis je à l'aide d'une fonction similaire faire en sorte que le champ destiné au nom de l'opérateur soit également encodé automatiquement en se basant par exemple sur un autre fichier XL qui conteint l'horaire de ces opérateurs. ( voir exemple en annexe ) D'avance je vous en remercie |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
J'ai imaginé cette situation le tableau suivant en Sheet2 et allant de A1:B5 Parkings Opérateur a Opérateur 1 b Opérateur 2 c Opérateur 3 d Opérateur 4 En A2 de Sheet1 mettre la formule suivante Code :
=INDEX(Sheet2!$A$2:$B$5;EQUIV(Sheet1!D2;Sheet2!$A$2:$A$5;0);2) J'espère que c'est comme cela que vous voiyez la situation.
__________________
Cordialement. RJ |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour a tous,
Merci rjamin pour ton aide, j'ai testé ta formule mais en A2 j'ai un message d'erreur #NAME? En faite ce que je veux c'est que soit mis en A2 le nom de l'opérateur qui travail ce jour la et pour cela j'ai imaginer que la formule irait comparer la date et l'heure qui est entrer automatiquement lors de l'encodage et de ragarder dans un autre tableau situe en sheet2 qui contient l'horaire quesl l'operateur qui travail ce jour. ( VOIR EN ANNEXE LE FICHIER HORAIRE ) Je sais que cela est possible, mais je n'ai pas assez de connaissance. D'avance merci a vous |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
Un problème se pose à cause que la date qui s'inscrit avec la fonction MAINTENANT() inclus l'heure et que les dates dans le tableau Horaires sont des dates sans heures donc impossible de faire des comparaison d'égalité entre ces cellules.
__________________
Cordialement. RJ |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour rjamin,
Dans le tableau horaire, les shifts sont indiquer de cette maniere exemple: 07:00 15:00 pour bil le 4 mai 2011. il y a donc peut etre moyen de comparer l'heure qui s'affiche avec la fonction MAINTENANT avec l'heure ( le shift ) repris dans le tableau horaire. Exemple: si heure MAINTENANT est >=07:00 et <=15:00 alors mettre nom operateur dans cellule x, est il possible d'integrer ce style logique dans une fonction qui donnerait le resultat voulu? merci |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
Moyennant des changements du tableau horaire je crois que cela répond à votre demande. J'ai mis les explications dans le fichier joint.
__________________
Cordialement. RJ |
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour rjamin,
Tu es tres fort :-), un tres grand merci mais j'ai un petit souci je t'explique j'ai integrée ta formule dans ma base de donnée mais le probème c'est que j'utilise 5000 lignes/mois dans la base de donnée et j'ai donc recopier la formule mais les numeros des celllules changent et la ca pose problème. As tu une stuce pour remédier à cela? D'avance un grand merci a toi |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
Vous parlez des lignes de quel tableau de celui des horaires?
__________________
Cordialement. RJ |
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour rjamin,
En faite comme j'utilise en moyenne/mois 5000 lignes je dois donc avoir 5000 lignes avec ta formules mais lorsque je recopie ta formule jusqu'a la 5000eme ligne bien dans ta formule les numeros des cellules qui vont chercher dans le tableau horaire les resultats sont modifier ( elles prennent le numero de la ligne dans laquelle la formule est recopier ) et donc de ce faite la formule n4est plus operationnelle. Les numeros des cellules correspondant au tableau horaire doivent rester fixe. Je t'invite a recopier la formule sur les lignes en dessous pour comprendre ce que je veux dire. Encore une fois un tres grand merci a toi. |
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
J'ai adapté les formules pour la recopie vers le bas. Les modifications sont détaillées dans le fichier Exemple joint. Bon travail.
__________________
Cordialement. RJ |
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Un grand merci Robert,
je te tiens au courant si cela marche. Merci |
|
|
00
|
|
|
#12 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Oui en effet j'ai pas pense au $ !!!!
|
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Grandiose,
Merci Robert, milles merci ! |
|
|
00
|
|
|
#14 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour rjamin,
Je reviens vers vous car j'ai un petit soucis avec la formule lors du changement de date. Cela pose problème avec l'opérateur qui fait le shift 23h à 07h lors du changement de date pour exemple opérateur qui fait 23-07h le 07/05, bien arrivé au 08/05 à minuit il indique l'opérateur qui fait la nuit le 08/05 ( voir tableau horaire ) alors qu'il devrait mettre l'opérateur qui fait la nuit du 7/05 au 8/05. Avez vous une idée pour remédier à cela. Bien à vous. |
|
|
00
|
|
|
#15 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Re bonjour Robert,
En rajoutant une plage allant de 0 à 7 -> plage 4 et celle qui comprend la plage 23 à 24h ( >=23 ) plage 1 j'ai donc légèrement modifié la formule et et réadapté le tableau horaire en ajoutant une colonne plage 4 et le tout fonctionne parfaitement. Voici la formule : Code :
=IF($D4="";"";IF(AND(HOUR($C4)>=7;HOUR($C4)<15);2;IF(AND(HOUR($C4)>=15;HOUR($C4)<23);3;IF(AND(HOUR($C4)>=0;HOUR($C4)<7);4;IF(HOUR($C4)>23;1))))) Plage 1 de 23 à 00 h Plage 2 de 7 à 15 h Plage 3 de 15 à 23 h Plage 4 de 00h à 7h |
|
|
00
|
|
|
#16 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
J'ai dû encore réadapter la formule car il y avait quelques soucis, voici le code:
Code :
=IF($G1151="";"";IF(AND(HOUR($E1151)>=7;HOUR($E1151)<15);2;IF(AND(HOUR($E1151)>=15;HOUR($E1151)<23);3;IF(AND(HOUR($E1151)>=0;HOUR($E1151)<7);4;1)))) J'ai également ajouté au tableau horaire le 1er jour du mois suivant et adapter les formules liés a ce changement. Bien à toi |
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Bonjour,
J'arrive en retard mais enfin j'avais trouver ceci Code :
=SI($D3="";"";SI($E3<3;INDEX($H$3:$J$9;EQUIV($B3;$G$3:$G$9;0);EQUIV($E3;$H$2:$J$2;0));INDEX($H$3:$J$9;EQUIV($B3-1;$G$3:$G$9;0);EQUIV($E3;$H$2:$J$2;0))))
__________________
Cordialement. RJ |
|
|
00
|
|
|
#18 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Merci mais je vais garder l'autre code, il y avait également un soucis avec le code qui donne l'heure avec la fonction NOW(), quand je passais à la ligne suivante l'heure inscrite dans la cellule s'inscrivait également dans les cellules au dessus voir dans votre exemple. J'ai donc remis mon code que j'utilisais avant.
Cordialement, |
|
|
00
|
|
|
#19 |
|
Membre Expert
![]() Robert JAMINRetraité Inscription : juillet 2009 Messages : 1 223 ![]() |
Re,
Pas de souci l'essentiel est que vous ayez ce que vous voulez. Bon travail.
__________________
Cordialement. RJ |
|
|
00
|
|
|
#20 |
|
Invité régulier
![]() Inscription : janvier 2010 Messages : 40 ![]() |
Bonjour Rjamin,
Je reviens vers vous car j'ai par moment un petit bug concernant l'automatisation mise en place. A partir de 23h00, il se plante au niveau de la date et du coup il remplace automatiquement les dates au dessus. je ne comprends pas d'ou cela pourrait venir. Peut etre de mon tableau horaire?? Avez vous une idee? Cordialement, |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com