IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Nombre aleatoire de 1 à 4 [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut Nombre aleatoire de 1 à 4
    Bonjour à tous,

    J'aimerai obtenir de la manière la plus aléatoire possible, un des 4 chiffres ( 1 2 3 ou 4)
    Comment faire pour que la répartition soit parfaitement équitable

    dois-je utiliser la fonction randomize?

    Merci d'avance
    Cordialement
    DoDo

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour,
    une fonction générale
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function Aleatoire(ByVal bInf As Integer, ByVal bSup As Integer) As Integer
     
    Randomize
    Aleatoire = Int((bSup - bInf + 1) * Rnd() + bInf)
    End Function
    Qu'on peut utiliser ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test()
    Dim i As Integer
     
    For i = 1 To 100
        Range("A" & i) = Aleatoire(1, 4)
    Next i
    End Sub
    Sinon, pour ne pas reconstruire la roue, la fonction intrinsèque d'excel (au moins dans la version 2007)
    =ALEA.ENTRE.BORNES(1;4)
    qui est traduite en vba par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A1").value = Application.WorksheetFunction.RandBetween(1, 4)

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut
    Bonjour mercatog,

    j'aime beaucoup l'idée de la fonction

    Merci

    Cdt
    DoDo

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Deb.] Nombre aleatoire bricolage a critiquer
    Par Marc_3 dans le forum C++
    Réponses: 2
    Dernier message: 15/11/2005, 20h04
  2. Nombres aléatoires
    Par bdaboah dans le forum C
    Réponses: 10
    Dernier message: 05/10/2005, 12h04
  3. [langage] générer un nombre aléatoire gaussien
    Par kayari dans le forum Langage
    Réponses: 5
    Dernier message: 23/05/2005, 09h12
  4. nombres aleatoires en plsql
    Par al85 dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 29/03/2005, 20h07
  5. nombre aleatoire
    Par Bob dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 17/06/2002, 19h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo