Problème simple VBA

Résolu
Bonjour, voila j'ai un problème assez simple en fait je voudrais qu'une variable prenne un nombre aléatoirement dans un intervalle précis [par exemple entre 30 et 45] comment puis-je faire ?

Merci

9 réponses

  1. Bonjour,

    Une petite précision : pour éviter que le même cycle aléatoire ne se reproduise, il faut mettre :
    Randomize Timer

    juste au dessus de :
    aleatoire = Int(Rnd() * (100 - r + 1)) + r


    ;o)
    1. Contributeur
      yes, important aussi :-)
  2. Contributeur
    re,

        Dim r As Integer, aleatoire As Integer
        ' 72: exemple de réponse de la txtbox, en string à convertir en numérique
        r = CInt("72") 
        ' 100-r+1 => 29 valeurs
        ' Int(Rnd() * (100 - r + 1)) => valeurs aleatoires de 0 à 28
        ' Int(Rnd() * (100 - r + 1))+r  => valeurs aleatoires de 72 à 100 inclus
        ' ce qui donne :
        aleatoire = Int(Rnd() * (100 - r + 1)) + r


    eric
    1. Erf nan ... j'ai a peu de chose près le même problème en fait je voudrais mettre maintenant ma variable entre une variable aléatoire et une valeur fixe.

      je m'explique par un example :

      " l'utilisateur écrit une valeur ('valeur') dans une txtbox. je veux que l'ordinateur prenne une variable aléatoire entre veleur et 100"

      Comment puis je faire ?
      1. je besoin de api java qu'est ce que c'est et comment je le télécharge merci
        1. J'ai pas tous suivi là u_u ... java ? qu'est-ce que ça vient faire là ?
      2. pour faire mes variables aléatoires je fais :

        Randomize
        
        lavariable = int (rnd * 4)


        mais ça me tire au sort 0,1,2 ou 3 pour cet example et là dedans je sais pas mettre d'intervalle
        1. la fonction random qui donne une variable aleatoire mais tu peut l'encadrer dans l'intervalle que tu veut