Nombre mystère

pointlimit0 Messages postés 26 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

J'ai voulu créer un jeu du nombre mystère sur excel,

voilà mon problème, j'arrive a générer un nombre aléatoire qui devra être retrouvé par encadrements successifs. sauf que à chaque fois que je saisis une proposition et que je tape sur entrée, mon nombre aléatoire change. Il est alors impossible de réussir le jeu.
Existe t-il une astuce pour que le nombre aléatoire reste le même durant toute la partie?

J'espère avoir été clair...

Merci d'avance pour vos réponses

Laurent

9 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Il faudrait voir ton code pour t'aider. Mais normalement tu mets ton nombre dans une variable, et si tu ne la modifies jamais alors elle gardera toujours la même valeur.
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Pourquoi parles-tu d'excel alors que tu postes ton programme dans le forum C ?
Est-ce de l'Excel (VBA) ou du C ?
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Bien vu ! J'avais effectivement zappé le fait que ce soit de l'Excel, j'avais surtout vu le C...
Mais la réponse devrait rester la même quelque soit le langage !
0
pointlimit0 Messages postés 26 Statut Membre
 
Bonsoir,

Autant pour moi, je viens de me rendre compte que je m'étais trompé de rubrique.
Je suis effectivement dans une feuille de calcul excel.
quand je saisis un nombre dans une cellule, automatiquement toutes les cellules de la feuille sont mises à jour. moi, ce que je voudrai, c'est que la cellule qui contient le nombre mystère obtenu aléatoirement ne soit pas modifiée.

Laurent
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Comme on t'a dit, il nous faut le code si tu veux qu'on t'aide...
0
via55 Messages postés 14730 Date d'inscription   Statut Membre Dernière intervention   2 751
 
Bonjour,

Effectivement si ton nombre aleatoire provient d'une formule sur la feuille le recalcul se fait à chaque modificatin de la feuille

Tu peux obtenir un nombre aleatoire par une macro vba et le placer dans une cellulle, il ne variera plus

Ouvrir l'editeur Alt F11

Inserer un module et rentrer le code suivant

Sub tirage()
Dim nombre
Randomize ' Initialise le générateur de nombres aléatoires.
' Renvoie une valeur aléatoire comprise entre 1 et 100.
nombre= Int((100* Rnd) + 1)
'Place le nombre en cellule A1
cells(1,1).value=nombre
End Sub

Ensuite appeler la macro depuis l'Onglet developpeur Macros
ou inserer un bouton qui appelera la macro

Cdlmnt
0
pointlimit0 Messages postés 26 Statut Membre
 
Bonjour et merci de vos réponse,

Entre temps, j'ai tatoné un peu et comme je ne connais pas le langage VBA, il me semble avoir trouvé une solution plus simple:
Si je mets ma formule aléatoire dans une case sur la feuille numéro deux et que je clique sur "calcul manuel". ensuite je garde le calcul automatique dans la feuille numéro un. ne suffit-il pas de cliquer sur "calcul maintenant " de la feuille numéro 2 pour générer mon nombre? Ainsi quand je ferais des propositions sur la feuille numéro 1, le nombre de la feuille numéro 2 ne devrait pas changer, si?
je vous l'avoue, c'est un peu du système D
En ce qui concerne le code demandé, je ne sais pas de quoi il s'agit.
Je vous souhaite un bon WE
Laurent
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Si je mets ma formule aléatoire dans une case sur la feuille numéro deux
Bah quelle formule ? ALEA() ? Faut préciser...
Sinon tu as deux solutions, soit tu fais un bouton qui fait que ça recalcule tout uniquement lorsque tu cliques dessus, ou alors du code VBA.
0

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

Posez votre question
pointlimit0 Messages postés 26 Statut Membre
 
Bon ben j'ai vendu la peau de l'ours avant de l'avoir tuée:
si je change les paramètres du calcul sur une feuille çà change également sur l'autre feuille.
J'ai donc essayé d'ouvrir deux fenêtres distincte, mais alors celle ci n'ont plus aucun rapport entre elles.
En effet, j'ai mis sur une cellule de la première fenêtre
"=C:\Users\Utilisateur\Desktop\[Le nombre.xlsx]Feuil1'!$A$1"
la formule en question que je trouve dans la fenêtre 2
"ENT(ALEA()*(MAXIMUM-0)+0) ou MAXIMUM et le nombre choisi pour faire trouvé un nombre entre 0 et MAXIMUM.
La cellule maximum se trouve dans la première fenêtre.
Donc résumons: en choisissant 2 feuilles différentes, l'une n'est pas assez indépendante de l'autre et en choisissant 2 fenêtres différentes, l'une est trop indépendante de l'autre.
J'espère encore une fois avoir été clair. Je peux si vous êtes intéressés vous envoyer mon fichier contenant les deux feuilles.
Laurent
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonjour,

si tu ne veux pas utiliser le vba proposé par via55 tu peux faire ainsi :
Dans les options autoriser le calcul itératif.
En A2:
=SI(B2="";ENT(ALEA()*100+1);A2)
Si tu mets un X en B2 ton nombre aléatoire est bloqué.
Si tu le supprimes un nouveau est affiché, remettre le verrou.

https://www.cjoint.com/?CBqpol07cvY

eric
0
via55 Messages postés 14730 Date d'inscription   Statut Membre Dernière intervention   2 751
 
Bonjour Eric

Super astuce ! je retiens la manip
J'ai testé et même sans activer calcul itératif cela affiche l'erreur d'avertissement de reference circulaire mais cela fonctionne quand même

Cordialement
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
salut eric,

totalement d'accord avec via55, super astuce

bonne soirée
0
aziz_alg80 Messages postés 427 Statut Membre 22
 
Salut;

C'est avec la fonction ALEA() que tu génère tes nombres aléatoires?

Si c'est oui, c'est normal qu'à chaque ENTER ces nombres changent.

Si tu veux qu'ils changent pas, moi je te propose la solution suivante :

1° Sélectionner la cellule ( ou la plage de cellules) qui contient le(s) nombre(s) aléatoire(s).

2° Clique droit, Copier

3° Sur la (les) même cellule(s), Clique Droit / Collage Spécial / Coller : Valeurs / OK

4° Normalement les nombres ne changerons plus.

Abdelaziz
0
pointlimit0 Messages postés 26 Statut Membre
 
Merci beaucoup, çà marche...
J'avais un peu peur au début car j'avais oublié d'autoriser le calcul itératif.
Je vous joins le fichier
https://www.cjoint.com/?CBqqXlMkZiz
Vos remarques sont les biens venues
Laurent
0
aziz_alg80 Messages postés 427 Statut Membre 22
 
Excuse moi; mais j'ai pas bien compris le principe de ce jeu
0