1 à 100 positionnés aléatoirement

  • Initiateur de la discussion Initiateur de la discussion Zucchero
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Z

Zucchero

Guest
Bonjour,

Je cherche un système sous excel capable de placer aléatoirement les chiffres de 1 à 100.
(ex. 1,18,24,36,78...)

Merci de votre aide. Bonne journée. 😉
 
Bonjour le Forum, bonjour Zucchero,

Une petite piste:
en indiquant par exemple 1 en cellule b1 et 100 en cellule a1 la formule ci dessous te donnera un nombre aléatoire entre 1 et 100.
Il suffit de tirer la formule vers le bas:

ARRONDI(ALEA()*($B$1-$A$1)+$A$1;0)

cette formule peut générer des doublons ; je continue de chercher en pensant qu'il y a mieux!!

a+ surement
 
Salut Zucchero,

Avec la fonction ALEA et la fonction ENT tu devrais pouvoir t'en tirer. de mémoire (mais reste tout de meme à vérifier) ca doit donner quelque chose du genre :
=ENT(ALEA()*100+1)

la fonction ALEA te renvoie un nombre compris entre 0 et 1 (inclus). tu multiplie donc ce nombre par 100 et tu ajoute 1 pour avoir un nombre entre 1 et 100
la fonction ENT te permet de garder la partie entière de ton nombre

@+
 
Bonjour Zucchero, lE0nard,



J'avais la même chose en macro avec le même constat pour les doublons.

Code:
Sub toto()
j = 1
k = 1
For i = 1 To 100
    If i Mod 10 = 0 Then j = j + 1: k = 1
    Cells(k, j) = Int(101 * Rnd + 1)
    k = k + 1
Next i
End Sub

Pour les doublons, je pense qu'il faudra passer par un tableau.

Abel.

Edition :
Oups ! Pardon Porcinet82. Pas rafraichi.

Message édité par: Abel, à: 15/11/2005 13:23
 
Salut,

Il existe les fonctions ALEA.ENTRE.BORNES() et ENT(ALEA()*100)), mais le problème, c'est les doublons.

Il y a aussi moyen d'écrire dans une colonne une liste de 1 à 100, puis dans la colonne voisine de placer la fonction ALEA() sur les 100 lignes et de trier les deux colonnes sur la deuxième colonne.

Désavantage : les nombres se modifient à chaque calcul de la feuille.

Le plus pratique est de télécharger MOREFUN sur :
Ce lien n'existe plus
Parmi les macros complémentaires il y a ALEAS() qui fait exactement ce que tu demandes, sans doublons.

Â+
 
Salut Zucchero,

A essayer :

en A1 :

=ALEA()

A recopier jusqu'en A100


en B1 :
=RANG(A1;$A$1:$A$100)

A recopier jusqu'en B100

Cela te donne les nombres de 1 à 100 dans un ordre aléatoire et sans doublon. Attention toutefois, en fonction de tes besoins, il faut peut être faire un copier / collage spécial / valeur pour figer cette liste aléatoire.

@+

Message édité par: tibo, à: 15/11/2005 13:27
 
Bonjour tout le monde

après la bagarre, mais tant pis.

Une macro VBA pour des aléatoires sans doublons :


Sub Bouton2_QuandClic()
Dim tablo(1 To 100)
Dim i As Byte, j As Byte
Dim doublons As Boolean

For i = 1 To 100
       
Do
                tablo(i) = Int((100 * Rnd) + 1)
                doublons =
False
                       
For j = 1 To 100
                               
If i <> j Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
If tablo(j) <> '' Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
If tablo(i) = tablo(j) Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; doublons =
True
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Exit For
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Next j
&nbsp; &nbsp; &nbsp; &nbsp;
Loop Until Not doublons
Next i
For i = 1 To 100
&nbsp; &nbsp; &nbsp; &nbsp; Cells(i, 2) = tablo(i)
Next i
End Sub


salut
 
Resalut à vous tous,

Hi, hi, hi, ...

J'ai pris d'entrée la soluce toute prête d'XLDnaute

Il ne nous reste plus qu'à lister les noms des XLFnautes (tous) et d'y appliquer un ALEA() pour savoir qui est l'heureux élu, encore faudrait-il savoir si le classement se fera par ordre croissant ou décroissant !

Â+
 
Bonjour le fil, le forum,

Ha, merci Hervé. C'est ce que je cherchais à faire au plus simple ou au moins scabreux ...

Arf ! André, j'étais en train de chercher qui était xlDnaute parmis les aléas ou autres chronos.
J'en ai encore la larme à l'oeil. Hi hi !

Bonne journée à tous.

Abel.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2013 Annulé
Réponses
6
Affichages
293
  • Question Question
Microsoft 365 problème d'index
Réponses
19
Affichages
496
Réponses
16
Affichages
1 K
Réponses
3
Affichages
143
Retour