hilpers


  hilpers > microsoft.* > microsoft.excel

 #1  
25/05/2010, 08h11
STEPH B
Bonjour,

Voici mon code
Sub range()
Dim nb_aleatoire
I = 1
Do While Sheets("MESURES_PB").Cells(I, 2) <> ""
I = I + 1
Loop
Sheets("MESURES_PB").Cells(I - 1, 14) = 0
Sheets("MESURES_PB").Cells(I - 1, 16) = Abs(Rnd() - Rnd())
Sheets("MESURES_PB").Cells(I - 1, 8) = "=RC[8]*(RC[7]-RC[6])+RC[6]"
If Sheets("MESURES_PB").Cells(I - 1, 15) = "NEG" Then
Sheets("MESURES_PB").Cells(I - 1, 15) = 1
End If
If Sheets("MESURES_PB").Cells(I - 1, 15) = "POS" Then
Sheets("MESURES_PB").Cells(I - 1, 15) = 10
End If
If Sheets("MESURES_PB").Cells(I - 1, 8) > 1 Then
Sheets("MESURES_PB").range("A1").Value = ""
End If
Sheets("MESURES_PB").Cells(I - 1, 8).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub

EN FAIT MON PROBLEME EST LA FONCTION
Sheets("MESURES_PB").Cells(I - 1, 16) = Abs(Rnd() - Rnd())
qui genere toujours le meme chiffre à l'execution de la macro qui peut etre
executer plusieurs fois....

pourrais un peu changer cela au besoin meme de creer une fonction qui
generait ce chiffre et l'appelerai a chaque fois que besoin.

merci d avance.

 #2  
25/05/2010, 08h28
ThierryP
Bonjour,

Je pense qu'en mettant Randomize avant ta fonction, ça devrait le faire.

Le 25/05/2010 10:11, STEPH B a écrit :
[..]
 #3  
25/05/2010, 09h56
STEPH B
merci thierry de ta reponse... mais je vois pas comment faire!
je mets randomize où?


"ThierryP" <t> a écrit dans le message de news:
%2395OZS%23%23KHA.1892...
[..]
 #4  
25/05/2010, 11h01
isabelle
bonjour STEPH,

le chiffre doit t'il être entre 0 et 1 ?
est ce que la cellule est au format standard ?

isabelle

Le 2010-05-25 05:56, STEPH B a écrit :
[..]
 #5  
25/05/2010, 11h50
STEPH B
c est exactement ca isabelle!



"isabelle" <i@v> a écrit dans le message de news:
OTQgdm$%23KHA.5476...
[..]
 #6  
25/05/2010, 12h08
isabelle
j'ai fait le test suivant et j'obtient bien 10 chiffres différent,

Sub test1()
For i = 1 To 10
Cells(i, 1) = Abs(Rnd() - Rnd())
Next
End Sub

peut tu tester ?

isabelle

Le 2010-05-25 07:50, STEPH B a écrit :
[..]
 #7  
25/05/2010, 12h53
STEPH B
ben en fait
oui c ce que j avais
mais en fait quand tu ferme et reouvre et re execute la macro ce sont les
memes aléatoires qui sont générés...



"isabelle" <i@v> a écrit dans le message de news:
u3Gz2LA$KHA.5476...
[..]
 #8  
25/05/2010, 13h00
ThierryP
Re !

En fait, c'est une instruction VBA (voir aide pour les détails); tu la places
donc juste avant ton utilisation de rnd, et ton générateur sera réinitialisé à
chaque fois (calcul basé sur l'horloge système, de mémoire)

Le 25/05/2010 14:53, STEPH B a écrit :
[..]
 #9  
25/05/2010, 13h34
STEPH B
nikel

merci bcps

ca marche


"ThierryP" <t> a écrit dans le message de news:
OgTnTqA$KHA.3176...
[..]

Discussions similaires
Rnd, Rnd() et Randomize

Bonjour, Bonjour et Merci, Merci, Cette macro génère n nombres entiers différents choisis au hasard entre a et b (bornes incluses). bi : nom de la cellule contenant a bs :...

Randomize de 0 à 10

Bonsoir J'ai cette proc qui me donne les chiffres aléatoires de 1 à 10 Randomize Lbl_alea = Int(10 * Rnd) + 1 Je souhaite avoir de 0 à 10 Merci beaucoup Flo riant

randomize-line

Salut tout le monde, Un certain nombre d'entre vous doivent connaitre le tres utile M-x sort-line qui permet de trier un buffer, ligne par ligne dans...

randomize()

bonjour je fais un prog sous dev c++ 4.9.8. C'est un prog ou l'utilisateur devine le nombre aleatoire que l'ordinateur cache entre 0 et 9999 ( par dichotomie) le probleme...


Fuseau horaire GMT. Il est actuellement 19h53. | Privacy Policy