ALEA.ENTRE.BORNES [Résolu/Fermé]

Signaler
-
 BABAR07 -
Bonjour,

je suis toujours coincer sur un jeu de master mind que j'ai crée.
en A1,B1,C1,D1,E1, dans toutes ces cellules j'ai entré la formule suivante
=ALEA.ENTRE.BORNES(1;10) cela fonctionne trés bien mais j'ai des doublons et quand je rentre un chiffre en A6 (EXP), cela me change tous les autres chiffres en A1 , etc, y aurait'il une grosse tête plus que la mienne, qui puisse me donner la solution pour que ce problème ne se fasse pas
Soit une macro ou une formule
je possède excel 2007
je remercie d'avance toutes les personnes qui arriveront à résoudre ce prob

7 réponses

Messages postés
52783
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
14 741
Cela ne changera pas grand-chose : au cours de la partie, chaque fois que l'utilisateur du jeu va cliquer sur [Enter] les valeurs aléatoires vont changer ...
merci beaucoup de m'avoir répondu, mais cela ne me résoud pas mon problème
Messages postés
52783
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
14 741
Une solution (parmi d'autres) :

Si tu utilises les colonnes A à H pour ton programme, on peut réserver les cellules K1 à O1 pour y mettre tes formules aléatoires, et en P1 placer la formule de test =SI(ET(K1<>L1;K1<>M1;K1<>N1;K1<>O1; L1<>M1;L1<>N1;L1<>O1; M1<>N1;M1<>O1; N1<>O1);"OK";"à refaire")

Tu relances ta séquence jusqu'à ce que "à refaire" soit remplacé par "OK" ;
tu sélectionnes K1:O1 ; tu fais Copier ;
tu vas en A1 et tu fais Collage spécial/ Valeurs.
Messages postés
52783
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
14 741
https://www.cjoint.com/?jqsbcHrEfJ
Bonjour, je me permets de te faire parvenir mon fichieressai pour mon master minds
amicalement, bonne réception
désolé pour ta soluc mais celle-ci ne réponds pas à ma question, mais je la conserve sous le coude pour une autre application.

MERCI DE VOTRE GENTILLESSE ET VOTRE CELERITE A ME REPONDRE
Messages postés
25656
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
5 646
Bonjour tous

un premier jet pour résoudre le problème de figer les données en ligne A1:E1
je réfléchi maintenant au moyen d'éviter les doublons
(une toute petite modification sur la macro)
http://www.cijoint.fr/cjlink.php?file=cj201009/cijsMYPUoG.xlsm
a+
crdlmnt
Messages postés
25656
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
5 646
et pour suivre un second fichier qui, sans permettre de supprimer le risque de doublon, devrait permettre de le réduire à un taux largement négligeable.
http://www.cijoint.fr/cjlink.php?file=cj201009/cijpJ4XIUO.xlsm
revenez si besoin d'info complémentaires.
bon courage
crdlmnt
bonjour, merci pour vos réponses, je vais essayer de les faire et on verras bien
merci beaucoup
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 515
Bonjour tout le monde,

Si tu veux rester par formule tu peux autoriser les références circulaires en allants dans 'outils / options...' onglet 'calcul' et cocher 'itération'.
Par défaut le nombre max =100, tu peux l'augmenter.
En A1 remplace ta formule par :
=SI($G$1="x";ALEA.ENTRE.BORNES(1;10);A1)
idem en B1:E1

Si rien dans G1 : tes nombres restent inchangés.
Si G1="x" : tes nombres sont générés à nouveau à chaque recalcul.
Restera le pb doublons à régler encore... et le fait que cocher itération est valable pour tout excel et non pour le classeur, ce qui oblige à le remettre correct après.

Comme j'ai vu que tu avais commencé les macros autant le faire entièrement par macro avec :
Sub nouveaux() 
    Dim dict, n As Long 
    Set dict = CreateObject("Scripting.Dictionary") 
    Randomize 
    While dict.Count < 5 
        n = Int(10 * Rnd + 1) 
        If Not dict.Exists(n) Then dict.Add n, 1 
    Wend 
    Range("A18:E18") = dict.keys 
End Sub


J'ai été interrompu et je viens de voir la proposition de vaucluse, comme ce sont 2 autres propositions je poste quand même.
Sur le fichier A1:C1 sont figés tant qu'il n'y a pas "x" en G1, on va dire que c'est plus à titre d'exemple.
Pour la proposition par macro : cliquer sur nouveaux (résultat en ligne 18)
fichier

eric
merci a toi de m'envoyer cette macro, mais elle n'a pas résolu mon problème.
je vais encore essayer de mon coté
Messages postés
25656
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
5 646
Bonjour,

En utilisant une macro pour copier et fichier une plage comme indiqué ci-dessous et y ajouter une formule pour éviter les doublons, vous pouvez utiliser ce fichier : http://www.cijoint.fr/cjlink.php?file=cj201009/cijCsIan2W.xlsm
Cordialement
CathyAstuce : http://www.cathyastuce.com
Je te remercie pour ta macro qui m'a été d'une grande aide

et à toutes les personnes qui m'ont si gentiment répondues