OVH Cloud OVH Cloud

Bonjour,

8 réponses
Avatar
Jean-Michel
Bonjour,

Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?

Merci !

8 réponses

Avatar
Clive Lumb
"Jean-Michel" a écrit dans le
message de news:
Bonjour,

Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?

Merci !



On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter de
temps en temps)

Dim UpperBound As Integer
Dim LowerBound As Integer
Dim I As Integer
LowerBound = 0
UpperBound = 10
Randomize (Timer)
For I = 1 To 100
Debug.Print Int((UpperBound - LowerBound + 1) * Rnd + LowerBound)
Next I
Avatar
Clive Lumb
Remplacer le "Debug.print" par "ton_variable=".
Evidemment le boucle de I de 1 à 100 n'est pas nécessaire non plus, je
l'avais mis simplement pour faire le demo
Conesrve bien le Randomize(Timer) sinon la série commencera toujours au même
endroit.

"Jean-Michel" a écrit dans le
message de news:
Merci pour ta reponse,

mais quel est la variable qui va etre egale de 0 à 10 ?

Merci !

"Clive Lumb" a écrit dans le message news:

> "Jean-Michel" a écrit dans le
> message de news:
> > Bonjour,
> >
> > Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
> >
> > Merci !
>
> On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
> Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter de
> temps en temps)
>
> Dim UpperBound As Integer
> Dim LowerBound As Integer
> Dim I As Integer
> LowerBound = 0
> UpperBound = 10
> Randomize (Timer)
> For I = 1 To 100
> Debug.Print Int((UpperBound - LowerBound + 1) * Rnd +


LowerBound)
> Next I
>
>
>
>




Avatar
Clive Lumb
Voici un exemple trouvé sur CodeToad
Mettre un Bouton "command1" sur un form et coller ce code

Public Function RandomNumbers(Upper As Integer, _
Optional Lower As Integer = 1, _
Optional HowMany As Integer = 1, _
Optional Unique As Boolean = True) As Variant
'*******************************************************
'This Function generates random array of
'Numbers between Lower & Upper
'In Addition parameters can include whether
'UNIQUE values are required

'Note the Result is INCLUSIVE of the Range

'Debug Example:
'x = RandomNumbers(49, 1, 7)
'For n = LBound(x) To UBound(x): Debug.Print x(n);: Next n
'WARNING HowMany MUST be greater than (Higher - Lower)
'******************************************************

On Error GoTo LocalError
If HowMany > ((Upper + 1) - (Lower - 1)) Then Exit Function
Dim x As Integer
Dim n As Integer
Dim arrNums() As Variant
Dim colNumbers As New Collection

ReDim arrNums(HowMany - 1)
With colNumbers
'First populate the collection
For x = Lower To Upper
.Add x
Next x
For x = 0 To HowMany - 1
n = RandomNumber(0, colNumbers.Count + 1)
arrNums(x) = colNumbers(n)
If Unique Then
colNumbers.Remove n
End If
Next x
End With
Set colNumbers = Nothing
RandomNumbers = arrNums
Exit Function
LocalError:
'Justin (just in case)
RandomNumbers = ""
End Function


Public Function RandomNumber(Upper As Integer, _
Lower As Integer) As Integer
'Generates a Random Number BETWEEN the LOWER and UPPER values
Randomize
RandomNumber = Int((Upper - Lower + 1) * Rnd + Lower)
End Function


Private Sub Command1_Click()
Dim JeuDeNombres As Variant
Dim I As Integer
JeuDeNombres = RandomNumbers(10, 0, 11, True)
For I = 0 To 10
Debug.Print JeuDeNombres(I)
Next I

End Sub



"Jean-Michel" a écrit dans le
message de news:
A par contre, comment je peux faire pour que quand le prog selectionne le
numero, il ne revienne pas, c'est a dire que je voudrai qu'il me trouve
0,1,2,3,4,5,6,7,8,9,10 mais mélangé et que si un nombre a été choisi, il
revienne pas, merci !

"Clive Lumb" a écrit dans le message news:
#
> Remplacer le "Debug.print" par "ton_variable=".
> Evidemment le boucle de I de 1 à 100 n'est pas nécessaire non plus, je
> l'avais mis simplement pour faire le demo
> Conesrve bien le Randomize(Timer) sinon la série commencera toujours au
même
> endroit.
>
> "Jean-Michel" a écrit dans le
> message de news:
> > Merci pour ta reponse,
> >
> > mais quel est la variable qui va etre egale de 0 à 10 ?
> >
> > Merci !
> >
> > "Clive Lumb" a écrit dans le message news:
> >
> > > "Jean-Michel" a écrit dans


le
> > > message de news:
> > > > Bonjour,
> > > >
> > > > Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
> > > >
> > > > Merci !
> > >
> > > On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
> > > Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter
de
> > > temps en temps)
> > >
> > > Dim UpperBound As Integer
> > > Dim LowerBound As Integer
> > > Dim I As Integer
> > > LowerBound = 0
> > > UpperBound = 10
> > > Randomize (Timer)
> > > For I = 1 To 100
> > > Debug.Print Int((UpperBound - LowerBound + 1) * Rnd +
> LowerBound)
> > > Next I
> > >
> > >
> > >
> > >
> >
> >
>
>




Avatar
Jean-Michel
Merci pour ta reponse,

mais quel est la variable qui va etre egale de 0 à 10 ?

Merci !

"Clive Lumb" a écrit dans le message news:

"Jean-Michel" a écrit dans le
message de news:
> Bonjour,
>
> Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
>
> Merci !

On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter de
temps en temps)

Dim UpperBound As Integer
Dim LowerBound As Integer
Dim I As Integer
LowerBound = 0
UpperBound = 10
Randomize (Timer)
For I = 1 To 100
Debug.Print Int((UpperBound - LowerBound + 1) * Rnd + LowerBound)
Next I






Avatar
Jean-Michel
C'est bon, j'ai trouver !
Merci beaucoup et @+

"Clive Lumb" a écrit dans le message news:

"Jean-Michel" a écrit dans le
message de news:
> Bonjour,
>
> Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
>
> Merci !

On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter de
temps en temps)

Dim UpperBound As Integer
Dim LowerBound As Integer
Dim I As Integer
LowerBound = 0
UpperBound = 10
Randomize (Timer)
For I = 1 To 100
Debug.Print Int((UpperBound - LowerBound + 1) * Rnd + LowerBound)
Next I






Avatar
Jean-Michel
A par contre, comment je peux faire pour que quand le prog selectionne le
numero, il ne revienne pas, c'est a dire que je voudrai qu'il me trouve
0,1,2,3,4,5,6,7,8,9,10 mais mélangé et que si un nombre a été choisi, il
revienne pas, merci !

"Clive Lumb" a écrit dans le message news:
#
Remplacer le "Debug.print" par "ton_variable=".
Evidemment le boucle de I de 1 à 100 n'est pas nécessaire non plus, je
l'avais mis simplement pour faire le demo
Conesrve bien le Randomize(Timer) sinon la série commencera toujours au


même
endroit.

"Jean-Michel" a écrit dans le
message de news:
> Merci pour ta reponse,
>
> mais quel est la variable qui va etre egale de 0 à 10 ?
>
> Merci !
>
> "Clive Lumb" a écrit dans le message news:
>
> > "Jean-Michel" a écrit dans le
> > message de news:
> > > Bonjour,
> > >
> > > Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
> > >
> > > Merci !
> >
> > On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
> > Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter


de
> > temps en temps)
> >
> > Dim UpperBound As Integer
> > Dim LowerBound As Integer
> > Dim I As Integer
> > LowerBound = 0
> > UpperBound = 10
> > Randomize (Timer)
> > For I = 1 To 100
> > Debug.Print Int((UpperBound - LowerBound + 1) * Rnd +
LowerBound)
> > Next I
> >
> >
> >
> >
>
>




Avatar
Jean-Michel
Enfin, j'ai pas trouver pour la suite des 10 chiffres sans retrouver le meme
!

"Jean-Michel" a écrit dans le
message news:
C'est bon, j'ai trouver !
Merci beaucoup et @+

"Clive Lumb" a écrit dans le message news:

> "Jean-Michel" a écrit dans le
> message de news:
> > Bonjour,
> >
> > Coment je peux faire en vb pour choisir un numero entre 0 et 10 ?
> >
> > Merci !
>
> On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
> Voici un exemple adapté de l'aide µSoft (qu'il convient de consulter de
> temps en temps)
>
> Dim UpperBound As Integer
> Dim LowerBound As Integer
> Dim I As Integer
> LowerBound = 0
> UpperBound = 10
> Randomize (Timer)
> For I = 1 To 100
> Debug.Print Int((UpperBound - LowerBound + 1) * Rnd +


LowerBound)
> Next I
>
>
>
>




Avatar
Jean-Michel
C'est exactement ce qu'il me faut, Bravo, et merci beaucoup !!!

"Clive Lumb" a écrit dans le message news:
#
Voici un exemple trouvé sur CodeToad
Mettre un Bouton "command1" sur un form et coller ce code

Public Function RandomNumbers(Upper As Integer, _
Optional Lower As Integer = 1, _
Optional HowMany As Integer = 1, _
Optional Unique As Boolean = True) As Variant
'*******************************************************
'This Function generates random array of
'Numbers between Lower & Upper
'In Addition parameters can include whether
'UNIQUE values are required

'Note the Result is INCLUSIVE of the Range

'Debug Example:
'x = RandomNumbers(49, 1, 7)
'For n = LBound(x) To UBound(x): Debug.Print x(n);: Next n
'WARNING HowMany MUST be greater than (Higher - Lower)
'******************************************************

On Error GoTo LocalError
If HowMany > ((Upper + 1) - (Lower - 1)) Then Exit Function
Dim x As Integer
Dim n As Integer
Dim arrNums() As Variant
Dim colNumbers As New Collection

ReDim arrNums(HowMany - 1)
With colNumbers
'First populate the collection
For x = Lower To Upper
.Add x
Next x
For x = 0 To HowMany - 1
n = RandomNumber(0, colNumbers.Count + 1)
arrNums(x) = colNumbers(n)
If Unique Then
colNumbers.Remove n
End If
Next x
End With
Set colNumbers = Nothing
RandomNumbers = arrNums
Exit Function
LocalError:
'Justin (just in case)
RandomNumbers = ""
End Function


Public Function RandomNumber(Upper As Integer, _
Lower As Integer) As Integer
'Generates a Random Number BETWEEN the LOWER and UPPER values
Randomize
RandomNumber = Int((Upper - Lower + 1) * Rnd + Lower)
End Function


Private Sub Command1_Click()
Dim JeuDeNombres As Variant
Dim I As Integer
JeuDeNombres = RandomNumbers(10, 0, 11, True)
For I = 0 To 10
Debug.Print JeuDeNombres(I)
Next I

End Sub



"Jean-Michel" a écrit dans le
message de news:
> A par contre, comment je peux faire pour que quand le prog selectionne


le
> numero, il ne revienne pas, c'est a dire que je voudrai qu'il me trouve
> 0,1,2,3,4,5,6,7,8,9,10 mais mélangé et que si un nombre a été choisi, il
> revienne pas, merci !
>
> "Clive Lumb" a écrit dans le message news:
> #
> > Remplacer le "Debug.print" par "ton_variable=".
> > Evidemment le boucle de I de 1 à 100 n'est pas nécessaire non plus, je
> > l'avais mis simplement pour faire le demo
> > Conesrve bien le Randomize(Timer) sinon la série commencera toujours


au
> même
> > endroit.
> >
> > "Jean-Michel" a écrit dans le
> > message de news:
> > > Merci pour ta reponse,
> > >
> > > mais quel est la variable qui va etre egale de 0 à 10 ?
> > >
> > > Merci !
> > >
> > > "Clive Lumb" a écrit dans le message news:
> > >
> > > > "Jean-Michel" a écrit dans
le
> > > > message de news:
> > > > > Bonjour,
> > > > >
> > > > > Coment je peux faire en vb pour choisir un numero entre 0 et 10


?
> > > > >
> > > > > Merci !
> > > >
> > > > On image que tu veux le choisir au hasard...sinon X=2 suffit ;-)
> > > > Voici un exemple adapté de l'aide µSoft (qu'il convient de


consulter
> de
> > > > temps en temps)
> > > >
> > > > Dim UpperBound As Integer
> > > > Dim LowerBound As Integer
> > > > Dim I As Integer
> > > > LowerBound = 0
> > > > UpperBound = 10
> > > > Randomize (Timer)
> > > > For I = 1 To 100
> > > > Debug.Print Int((UpperBound - LowerBound + 1) * Rnd +
> > LowerBound)
> > > > Next I
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>