Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Nombre aléatoire

6 réponses
Avatar
Stef
Bonjour

En vba, je souhaiterais obtenir un nombre aléatoire dans une plage donnée à
2 décimales.
2 plages plus importantes m'intéressent:

une formule adaptée pour : entre 0 compris et 0.06
et une autre pour : entre 0.8 et 1 non compris

J'utilise à l'heure actuel la formule ci-dessous :

Format(Evaluate("Rand()*0.5"), "0.00")

Merci par avance

6 réponses

Avatar
h2so4
Stef pretended :
Bonjour

En vba, je souhaiterais obtenir un nombre aléatoire dans une plage donnée à
2 décimales.
2 plages plus importantes m'intéressent:

une formule adaptée pour : entre 0 compris et 0.06
et une autre pour : entre 0.8 et 1 non compris

J'utilise à l'heure actuel la formule ci-dessous :

Format(Evaluate("Rand()*0.5"), "0.00")

Merci par avance



format(evaluate("Randbetween(0;6)/100","0.00")
format(evaluate("Randbetween(800;1000)/1000","0.00")

--
h2so4
ca PAN
pique DORA
.
Avatar
Stef
Merci, mais malheuresement je suis sous excel 2003, et lui ne connait pas
cette fonction (randbetween)
Avez vous une autre solution . Merci


"h2so4" a écrit dans le message de news:
k5k9r2$gnq$
Stef pretended :
Bonjour

En vba, je souhaiterais obtenir un nombre aléatoire dans une plage
donnée à 2 décimales.
2 plages plus importantes m'intéressent:

une formule adaptée pour : entre 0 compris et 0.06
et une autre pour : entre 0.8 et 1 non compris

J'utilise à l'heure actuel la formule ci-dessous :

Format(Evaluate("Rand()*0.5"), "0.00")

Merci par avance



format(evaluate("Randbetween(0;6)/100","0.00")
format(evaluate("Randbetween(800;1000)/1000","0.00")

--
h2so4
ca PAN
pique DORA
.



Avatar
DanielCo
Bonjour,
Assure-toi que les macros complémentaires Utilitaire d'analyse et
Utilitaire d'analyse - VBA sont bien sélectionnées. Dans la fenêtre
VBE, il faut que tu coches ensuite la référence "atpvbaen.xls"
utilise ensuite ensuite un code du style :
Randomize ' à mettre en tête de macro
Var = randbetween(1, 10)
Cordialement.
Daniel



Merci, mais malheuresement je suis sous excel 2003, et lui ne connait pas
cette fonction (randbetween)
Avez vous une autre solution . Merci


"h2so4" a écrit dans le message de news:
k5k9r2$gnq$
Avatar
Stef
Merci mais pourquoi cela fonctionne quand l'intervalle est sup à zéro mais
quand je souhaite que l'intervalle soit entre 0 et 0.06.

"DanielCo" a écrit dans le message de news:
k5mfns$f4s$
Bonjour,
Assure-toi que les macros complémentaires Utilitaire d'analyse et
Utilitaire d'analyse - VBA sont bien sélectionnées. Dans la fenêtre VBE,
il faut que tu coches ensuite la référence "atpvbaen.xls"
utilise ensuite ensuite un code du style :
Randomize ' à mettre en tête de macro
Var = randbetween(1, 10)
Cordialement.
Daniel



Merci, mais malheuresement je suis sous excel 2003, et lui ne connait pas
cette fonction (randbetween)
Avez vous une autre solution . Merci


"h2so4" a écrit dans le message de news:
k5k9r2$gnq$





Avatar
DanielCo
Ca ne fonctionne qu'avec des nombres entiers. Mets :
Var = randbetween(0, 6)/100
Daniel


Merci mais pourquoi cela fonctionne quand l'intervalle est sup à zéro mais
quand je souhaite que l'intervalle soit entre 0 et 0.06.

"DanielCo" a écrit dans le message de news:
k5mfns$f4s$
Bonjour,
Assure-toi que les macros complémentaires Utilitaire d'analyse et
Utilitaire d'analyse - VBA sont bien sélectionnées. Dans la fenêtre VBE, il
faut que tu coches ensuite la référence "atpvbaen.xls"
utilise ensuite ensuite un code du style :
Randomize ' à mettre en tête de macro
Var = randbetween(1, 10)
Cordialement.
Daniel



Merci, mais malheuresement je suis sous excel 2003, et lui ne connait pas
cette fonction (randbetween)
Avez vous une autre solution . Merci


"h2so4" a écrit dans le message de news:
k5k9r2$gnq$





Avatar
Gloops
Stef a écrit, le 16/10/2012 15:44 :
Bonjour

En vba, je souhaiterais obtenir un nombre aléatoire dans une plage d onnée à
2 décimales.
2 plages plus importantes m'intéressent:

une formule adaptée pour : entre 0 compris et 0.06
et une autre pour : entre 0.8 et 1 non compris

J'utilise à l'heure actuel la formule ci-dessous :

Format(Evaluate("Rand()*0.5"), "0.00")

Merci par avance





Bonjour,

A la hache, ça donne ça :


Public Function IntervHasard(BorneInferieure, BorneSuperieure) As Float
Dim Ecart As Float
Ecart = (BorneSuperieure - BorneInferieure)
IntervHasard = BorneInferieure + Rand() * Ecart
End Function

Si ça n'a pas changé, Rand() retourne une valeur entre 0 et 1.