Excel problème de formule.

Fermé
helpmeplease43 Messages postés 93 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 24 janvier 2014 - 31 mars 2011 à 09:11
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 1 avril 2011 à 00:54
Bonjour,

Excusez moi de prendre de votre temps tout le monde. Mais j'aurai une question à poser au sujet
d'une formule que je n'arrive pas à élaborer dans excel.

Je m'explique:

J'essaie en ce moment de créer un planning pour mon équipe de travail qui se générerait "quasiment" tout seul.
Cela m'aiderai dans le sens ou l'on ne devrait apporter des changements manuellement que lorsqua chacun posera ses jours de repos. Mon problème est le suivant:

J'aimerai créer un liste ou chaque cellule correspondrai à un mot qui lui correspondrai à un chiffre. Par exemple :

A52 = TRAVAILLE DE JOUR = "1"
A53 = RENDEZ-VOUS = "2"
A54 = INSPECTION = "3"
A55 = REUNION = "4"

Etc ...

De manière à ce que lorsque le nombre "1" sera demandai dans une autre cellule cela inscrive directement le mot qui lui correspond .
Exemple si je tape dans la cellule "B63" : =1 que cela inscrive : TRAVAILLE DE JOUR.

Voilà je ne sais pas si je me suis bien fait comprendre. Je suis vraiment Novice dans Excel, et cet "éditeur de planning " il me le faut absolument .
Alors si un de vous connait la formule qui pourra m'aider, je lui en serai éternellement reconnaissant.

Par avance je vous remercie les amis et vous souhaites une très bonne journée.

Cordialement,

----------------------------------------Helpmeplease43-----------------------------------------


8 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 704
Modifié par gbinforme le 31/03/2011 à 10:10
bonjour


Tu te crées un tableau par exemple en K1:L4
1 TRAVAILLE DE JOUR  
2 RENDEZ-VOUS  
3 INSPECTION  
4 REUNION  

puis en B64 tu mets la formule :
=RECHERCHEV(B63;$K$1:$L$4;2;FAUX)
ou
=DECALER($L$1;B63-1;0)

et tu obtiendras en B64 le libellé du chiffre que tu saisis en B63.

Tu ne peux pas dans la même cellule avoir une formule et saisir une donnée.
Toujours zen
1
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 423
31 mars 2011 à 09:29
bonjour
tu as aussi INDEX ou une Validation des données qui peuvent faire l'affaire voir l'exemple

http://www.cijoint.fr/cjlink.php?file=cj201103/cijp4kDH7c.xls

bonne suite
1
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 355
31 mars 2011 à 09:52
Votre demande n'est pas bien claire, mais si vous voulez voir vos textes apparaître dans la cellule A52 lorsque vous tapez un chiffre dans la cellule B52, il y a plusieurs possibilités. En voici une :

1 - faire un tableau sur 2 colonnes sur la même feuille ou sur une autre.
Par exemple de A1 à B4 de la Feuille 1 :
1 Travail de Jour
2 Rendez-vous
3 Inspection
4 Réunion

2 - Dans la cellule A52 vous mettez cette formule :
=SI(OU(B52=0;B52>4);"";RECHERCHEV(B52;Feuil1!$A$1:$B$4;2;FAUX))

3 - Et pour limiter la saisie aux seuls entiers de 1 à 4 dans la cellule B52, faire une validation des données : Données / validation, Onglet Options, Autoriser les nombres entiers et mettre le minimum à 1 et le maximum à 4

Il suffit ensuite de sélectionner A52 et B52, et de tirer les formules vers le bas.

Par contre, si vous voulez voir le texte apparaître dans la même cellule que celle ou vous rentrez le chiffre, c'est impossible sans passer par une macro du type
Private Sub Worksheet_Change(ByVal Target As Range)

Michel
1
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 355
31 mars 2011 à 13:14
Au risque d'insister lourdement mais il me semble que cette notion vous échappe :
il est IMPOSSIBLE de faire une saisie (formule, texte ou ce que vous voulez) dans une cellule pour afficher une autre donnée DANS LA MEME CELLULE.
Pour cette opération, vous devez passer obligatoirement par une macro qui surveille tout changement dans la plage de saisie.

Michel
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
helpmeplease43 Messages postés 93 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 24 janvier 2014 3
31 mars 2011 à 11:48
Tout d'abord merci à vous tous pour vos réponses.
Vos réponse me permettrons d'avancer , cependant il est vrai qu'elles ne répondent pas exactement à l'action que je souhaité mettre en oeuvre dans "excel" ( si toutefois cela s'avère réalisable ).

Je vais essayé de vous re-expliquer :

J'essaie en ce moment de mettre au point un planning pour une équipe de travail, qui se générerai tout seul.
Je sais déjà que pour utiliser l'algorithme de hasard je vais devoir utiliser la fonction : =ALEA() ou =ALEA()*100.

Cependant cette algorithme ne sert qu'à tirer au hasard des nombres compris entre 0 et 1 ou 0 et 100.

CE QUE JE SOUHAITERAI c'est créer un tableau en dessous de mon planning, dans lequel chaque MOT correspondra à un Nombre.

Ainsi lorsque j'inscrirai la formule =ALEA() dans une des case du planning
le chiffre qui ressortira aléatoirement bien-sûr, ne s'inscrira pas mais ce sera le mot qui lui correspond qui s'affichera.

J'aimerai générer une fonction automatique, par exemple si j'attribue :

3 au mot : Réunion

Que lorsque le chiffre 3 sera demandé en résultat dans n'importe quel case de ma feuille cela m'affiche "Réunion" à la place de 3.

Voilà je ne sais pas si cette fois j'ai réussi à être plus explicite.
Mais cependant je vous remercie pour l'aide que vous m'apportez.
En attendant peut-être d'autres suggestions de votre part.

Je vous remercie d'avance,

Cordialement,

---------------------------Helpmeplease43 -------------------------------
0
helpmeplease43 Messages postés 93 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 24 janvier 2014 3
31 mars 2011 à 13:05
Up S'il vous plais .

Pardonnez moi mais il s'agit d'un projet professionnel urgent.

Merci à vous et d'avance,

-----------------------Helpmeplease43------------------------
0
helpmeplease43 Messages postés 93 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 24 janvier 2014 3
31 mars 2011 à 13:32
Encore une fois je vous remercie pour votre réponse Michel,

J'avais pensé à la fonction ALEA.ENTRE.BORNE( )

en agissant de la sorte :

Dans une colonne de A1 à A3 j'inscris :

_____A__________B_____
1 | Bureau | |
2 | Travail | |
3 |___Repos___|___________| et en C3 : ALEA.ENTRE.BORNE(A1;A3)

Le résultat : #VALEUR!

Voilà je vais me renseigner sur les macros.
Si toutefois cependant vous trouvez un solution, je serai ravis de la connaître.

Encore Merci à vous !

Cordialement,


-----------------------------------------Helpmeplease43------------------------------------
0
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 355
Modifié par mic13710 le 31/03/2011 à 13:49
Normal que votre formule ne fonctionne pas. Alea.entre.bornes fait appel à des valeurs numériques et ne peut renvoyer que des nombres. Les données que vous avez entre A1 et A3 sont des textes et donc le résultat est #valeur! pour vous indiquer que ce sont des valeurs numériques qui sont attendues.
Mais ce que je ne comprends pas bien c'est que vous allez rentrer à chaque fois votre formule dans une cellule ?
Et qu'attendez vous comme résultat puisque à chaque calcul ou ouverture du fichier, Excel recalcule l'ensemble de la feuille.
Il y a sans aucun doute quelque chose qui m'échappe dans ce que vous cherchez à faire, mais ce qui est sûr c'est que c'est un drôle de planning que vous voulez. Mettre les gens aléatoirement au travail ou au repos, excusez moi mais j'appelle ça de la loterie, pas de la gestion de personnel.

Michel
0
helpmeplease43 Messages postés 93 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 24 janvier 2014 3
31 mars 2011 à 14:47
Tout d'abord permettez moi de saisir et de vous faire part du sourire qu'il m'es venu au lèvre en vous lisant.
Ne le prenez pas mal, car cela reste amicale et bien entendu je n'entend pas gérer un personnel comme du bétail.

Les Repos Seront à poser Manuellement,

J'essaierai d'autre part de ne pas froisser les gens et pour y parvenir, ce tableau et les calcules qu'il comprend ne seront probablement utilisé que si il ne dérange personne.

Pour la reformulation des calculs à chaque nouvelle entrée, je viens de m'en rendre compte.
Par contre j'ai aussi pu trouvé la formule qui marche grâce à un amis.

La voici :

=CHOISIR(ENT(1+(ALEA()*2));"AN";"SN";)

Sachant que : AN veut dire : ASTREINTE NUIT et SN veut dire SORTI DE NUIT.

Voilà pour la formule fonctionnelle.
Je peaufine mon tableau et d'ici quelque temps je vous tiendrai au courant des avancement,

Merci encore Michel pour votre humour,

Cordialement,
Helpmeplease43
0
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 355
31 mars 2011 à 15:08
Votre projet m'amuse en effet.
Mais j'avoue être un peu égaré et perplexe.
Au début, il y avait 4 critères, puis 3 (message#7) et maintenant plus que 2. J'espère que vous vous comprenez parce que là, je suis perdu.
Je crois que le plus sage en effet est d'attendre que vous ayez terminé votre réflexion.
Juste une remarque : vous pouvez remplacer dans votre formule ENT(1+(ALEA()*2)) par ALEA.ENTRE.BORNES(1;2) : ça me parait plus propre comme formulation.

A bientôt pour la suite,

Michel
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 704
31 mars 2011 à 21:05
C'est affectivement très amusant d'affecter des postes avec la fonction alea car à chaque mouvement on change de poste. J'avais appris à n'être pas trop rapide pour se lancer dans une nouvelle tache afin d'éviter le contre ordre mais là ce sera parfait :)

Dupond "tu es d'astreinte de nuit : le sort en a décidé"
OK !
et bien sûr Dupond peut sortir si ça lui chante ... le lendemain
Dupond "tu as oublié l'astreinte de nuit ?
Je n'étais pas d'astreinte, tu peux regarder ton tableau ?
et effectivement ALEA est parfait, pas besoin de certificat médical.

Plus sérieusement, il y a des fonctions plus adaptées pour cela mais l'on va attendre le bijou de classeur qui va sortir pour dérider un peu notre forum ;-)
puisque helpmeplease43 a le sourire tout va bien : bien amicalement.
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
31 mars 2011 à 23:55
Bonsoir tout le monde :-)

gb, serais-tu en train de dire qu'excel fais preuve d'une cruelle indécision à recalculer tous les alea() à chaque ouverture du fichier ? ;-)
eric
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 778
1 avril 2011 à 00:54
Bonjour le forum

je ne pense pas que helpmeplease43 postule pour un emploi de DRH où alors il n'y croit pas : ce tableau et les calculs qu'il comprend ne seront probablement utilisé que si il ne dérange personne

Il peut passer les calculs en mode manuel et jouer avec F9 pour provoquer le hasard !
=CHOISIR(ALEA.ENTRE.BORNES(1;9);"AN";"SN";"Buro";"Trav";"Rep";"TdJ";"RdV";"Insp";"Réun")
mais pour maitriser le hasard il existe une bonne formule :
=CHOISIR(ALEA.ENTRE.BORNES(1;1);"Vacance")

Patrice
0