Affichage de divers nombres par tirage aleatoire

  • Initiateur de la discussion Initiateur de la discussion REDGS
  • 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 !

REDGS

XLDnaute Nouveau
Bonjour le forum,
J'ai divers nombres dans la colonne A et je désirerais les faire apparaitrent dans la colonne C dans un ordre différent.
J'ai essayé avec la fonction ALEA(), mais le nouvel affichage se fait à partir de 1.
Quelqu’un peut ‘il m'indiquer la marche à suivre.
Merci.
REDGS
 

Pièces jointes

Re : Affichage de divers nombres par tirage aleatoire

Bonjour à tous,
Bonjour,

S'il n'y a que ce problème à régler, VBA n'est pas nécessaire.
@ Job, les colonnes supplémentaires non-plus

voir fichier joint

à+
Philippe
 

Pièces jointes

Re : Affichage de divers nombres par tirage aleatoire

Bonjour Philippe,

@ Job, les colonnes supplémentaires non-plus

Bien sûr.

J'avais mis la colonne Classement pour bien montrer ce qui se passe.

J'ai laissé aussi la colonne Rang qui était déjà là, elle ne sert pas à grand'chose.

A+
 

Pièces jointes

Re : Affichage de divers nombres par tirage aleatoire

Bonjour Job75 et Phlaurent55,
Job75 merci pour ton application qui effectivement est très bonne, surtout pour moi qui ne métrise pas très bien le VBA.
Phlaurent55 peux-tu me dire pourquoi certains de mes nombres sont transformés en d’autres nombres beaucoup plus important ? Il faut impérativement que je conserve ces nombres qui sont récupérés dans d’autres cellules.
Merci.
REDGS
 
Re : Affichage de divers nombres par tirage aleatoire

Re,
Phlaurent55 peux-tu me dire pourquoi certains de mes nombres sont transformés en d’autres nombres beaucoup plus important ?
ne te tracasse pas pour ces nombres, je les ai mis moi-même pour mieux visualiser leurs déplacements lors de l'appui sur F9

à+
Philippe
 
Re : Affichage de divers nombres par tirage aleatoire

Bonjour le fil, le forum,

La solution par formules présente cependant un inconvénient.

La fonction ALEA() est volatile, elle est recalculée chaque fois qu'on modifie une cellule ou qu'on ouvre le classeur.

On peut donc préférer une solution VBA.

Mais même là, il est plus simple d'utiliser des formules dans la feuille.

Voyez le fichier (3), tout se passe en colonne B.

Voyez les noms définis plage, alea, classe.

Et il y a un tri intermédiaire pour classer les nombres aléatoires :

Code:
Sub Tirage()
Application.ScreenUpdating = False
Range("A2", [A65536].End(xlUp)).Name = "plage" 'plage nommée
[B2:B65536].ClearContents 'la colonne B est vidée
With [plage].Offset(, 1) 'colonne B
  .Formula = "=RAND()" 'fonction ALEA()
  .Value = .Value 'ne garde que les valeurs
  ThisWorkbook.Names.Add "alea", .Value 'mémorisation
  .Sort .Cells, Header:=xlNo 'tri de la colonne B
  ThisWorkbook.Names.Add "classe", .Value 'aléatoires classés
  .FormulaArray = "=MATCH(classe,alea,0)" 'formule matricielle
  ThisWorkbook.Names.Add "classe", .Value 'matrice des rangs
  .FormulaArray = "=INDEX(plage,classe)" 'formule matricielle
  .Value = .Value 'ne garde que les valeurs
End With
End Sub
A+
 

Pièces jointes

Dernière édition:
Re : Affichage de divers nombres par tirage aleatoire

Bonjour Job75,
Merci à nouveau pour tes renseignements et ta façon d'expliquer le déroulement de la procédure. Comme dit précédemment, je m'intéresse depuis peu au VBA, et j'ai vraiment envie de continuer en découvrant toutes les possibilités de ce dernier.
Cordialement
Redgs
 
- 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

Discussions similaires

Réponses
4
Affichages
281
  • Question Question
Microsoft 365 Souci de copie
Réponses
8
Affichages
384
Réponses
10
Affichages
430
Retour