Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23kC$Kq8LEHA.1156@TK2MSFTNGP09.phx.gbl...
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" <nospam@nospam.net> a écrit dans le message de
news:40941c14$0$27679$636a15ce@news.free.fr...
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23kC$Kq8LEHA.1156@TK2MSFTNGP09.phx.gbl...
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" <nospam@nospam.net> a écrit dans le message de
news:40941c14$0$27679$636a15ce@news.free.fr...
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k = 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien. Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" a écrit dans le message de
news:
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" a écrit dans le message de news:Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
lesnombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" <nomail@nomail.net> a écrit dans le message de
news:OjzNoA9LEHA.2716@tk2msftngp13.phx.gbl...
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
OKo0By8LEHA.1192@TK2MSFTNGP11.phx.gbl...
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23kC$Kq8LEHA.1156@TK2MSFTNGP09.phx.gbl...
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" <nospam@nospam.net> a écrit dans le message de
news:40941c14$0$27679$636a15ce@news.free.fr...
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" a écrit dans le message de
news:
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" a écrit dans le message de news:Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
lesnombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini "programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" a écrit dans le message de
news:
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" a écrit dans le message de news:Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
lesnombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" <nomail@nomail.net> a écrit dans le message de
news:OjzNoA9LEHA.2716@tk2msftngp13.phx.gbl...
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
OKo0By8LEHA.1192@TK2MSFTNGP11.phx.gbl...
Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23kC$Kq8LEHA.1156@TK2MSFTNGP09.phx.gbl...
Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" <nospam@nospam.net> a écrit dans le message de
news:40941c14$0$27679$636a15ce@news.free.fr...
Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
les
nombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonjour GD,
Voici la version corrigée : Je ne peux pas penser à tout !!! ;-))
Je n'avais même pas vérifié le tirage ... ;-))
Rendu où j'en suis, je n'en suis pas à une version près de la
solution !!!
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int((49 * Rnd) + 1)
For j = 2 To 7
a = Int((49 * Rnd) + 1)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int((49 * Rnd) + 1): k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil2")
Set Rg = .Range("h10").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
For Each R In Rg.Rows
With R
a = a + 1
.Sort Key1:=Rg(a, 1), Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'------------------------------------------
Salutations!
"GD" a écrit dans le message de
news:
Bonsoir Michel ;-)))
Oupsss !!!!
je m'incline pour la vitesse !!!!
mais tu tires encore des zéros !!!!
Denis corrigera....
Nb : je reprends et conserve cependant ta fonction de tri qui me
reservira
par ailleurs....
@+
"michdenis" a écrit dans le message de news:Bonjour HARPER BEN
Voici la même procédure .... mais plus rapide dans l'exécution ...
'-------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Dim Tblo(), Rg As Range
ReDim Tblo(1 To 400, 1 To 7)
Randomize
Application.ScreenUpdating = False
For i = 1 To UBound(Tblo, 1)
Tblo(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Tblo(i, k) Then a = Int(49 * Rnd) + 1: k = 0
Next
Tblo(i, j) = a
Next
Next
With Worksheets("Feuil1")
Set Rg = .Range("A1").Resize(UBound(Tblo, 1), UBound(Tblo, 2))
End With
Rg = Tblo
Trier Rg
Set Rg = Nothing
End Sub
'-------------------------------------------
Sub Trier(Rg As Range)
Dim R As Range
Set Rg = Range("A1:G400")
For Each R In Rg.Rows
With R
.Sort Key1:=R, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set R = Nothing: Set Rg = Nothing
End Sub
'-------------------------------------------
Salutations!
"michdenis" a écrit dans le message de
news:%23kC$Bonjour HARPER BEN,
Essaie ceci : Tu n'as qu'à appeler la macro Loto, et le tour est
joué !
'------------------------------------------
Sub Loto()
Dim i As Integer, j As Integer, k As Integer
Randomize
Application.ScreenUpdating = False
For i = 1 To 400
Cells(i, 1) = Int(50 * Rnd)
For j = 2 To 7
a = Int(50 * Rnd)
For k = 1 To j - 1
If a = Cells(i, k).Value Then a = Int(49 * Rnd) + 1: k
= 0
Next
Cells(i, j) = a
Next
Next
Trier Range(Cells(1, 1), Cells(400, 7))
End Sub
'------------------------------------------
Sub Trier(rg As Range)
Set rg = Range("A1:G400")
For Each r In rg.Rows
With r
.Sort Key1:=r, Order1:=xlAscending, Header:úlse _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
End With
Next
Set rg = Nothing
End Sub
'------------------------------------------
Salutations!
"HARPER BEN" a écrit dans le message de
news:40941c14$0$27679$Merci beaucoup à tout les 2 pr ces infos : ca marche super bien.
Si je
pouvais juste demander un dernir p'tits truc.. comment faire pour
ranger
lesnombres de chaque ligne par ordre croissant ? Avec outils trier
c'est
quasi-impossible : il faut le faire ligne par ligne.
Merci encore
Bonsoir Clément,
Sur un PC PII 400 avec 256 Ram
Ta procédure : 2.8 secondes
La mienne : .75 secondes incluant le tri
Salutations!
"Clément Marcotte" a écrit dans le
message de
news:
Bonjour,
Moi, je sui trop paresseux pour mettre un tri.
Environ 4 secondes avec un Celeron 333 Mz et Excel 2002, 128 k Ram:
Sub Lotto_6_49()
Application.ScreenUpdating = False
Dim i As Integer, j As Byte, lenombre As Byte
Dim tirage As Object, letirage As Variant
Dim k As Byte
Randomize Timer
Set tirage = CreateObject("scripting.dictionary")
For i = 1 To 400
For j = 1 To 7
lenombre = Int(49 * Rnd(1) + 1)
If Not tirage.Exists(lenombre) Then
tirage.Add lenombre, j
Else
j = j - 1
End If
Next
letirage = tirage.Keys
For k = 0 To tirage.Count - 1
Cells(i, k + 1).Value = letirage(k)
Next
tirage.removeall
Next
Application.ScreenUpdating = True
Set tirage = Nothing
End Sub
"HARPER BEN" a écrit dans le message de
news:bonjour,
Je connnais tres mal Excel et je voudrais créer un mini
"programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
sériede 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le
meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
Bonsoir Clément,
Sur un PC PII 400 avec 256 Ram
Ta procédure : 2.8 secondes
La mienne : .75 secondes incluant le tri
Salutations!
"Clément Marcotte" <clement.marcotte@sympatico.ca> a écrit dans le
message de
news:uGaiYT9LEHA.624@TK2MSFTNGP11.phx.gbl...
Bonjour,
Moi, je sui trop paresseux pour mettre un tri.
Environ 4 secondes avec un Celeron 333 Mz et Excel 2002, 128 k Ram:
Sub Lotto_6_49()
Application.ScreenUpdating = False
Dim i As Integer, j As Byte, lenombre As Byte
Dim tirage As Object, letirage As Variant
Dim k As Byte
Randomize Timer
Set tirage = CreateObject("scripting.dictionary")
For i = 1 To 400
For j = 1 To 7
lenombre = Int(49 * Rnd(1) + 1)
If Not tirage.Exists(lenombre) Then
tirage.Add lenombre, j
Else
j = j - 1
End If
Next
letirage = tirage.Keys
For k = 0 To tirage.Count - 1
Cells(i, k + 1).Value = letirage(k)
Next
tirage.removeall
Next
Application.ScreenUpdating = True
Set tirage = Nothing
End Sub
"HARPER BEN" <zeze@free.fr> a écrit dans le message de
news:pan.2004.05.01.13.05.05.316555@free.fr...
bonjour,
Je connnais tres mal Excel et je voudrais créer un mini
"programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
série
de 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le
meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?
Bonsoir Clément,
Sur un PC PII 400 avec 256 Ram
Ta procédure : 2.8 secondes
La mienne : .75 secondes incluant le tri
Salutations!
"Clément Marcotte" a écrit dans le
message de
news:
Bonjour,
Moi, je sui trop paresseux pour mettre un tri.
Environ 4 secondes avec un Celeron 333 Mz et Excel 2002, 128 k Ram:
Sub Lotto_6_49()
Application.ScreenUpdating = False
Dim i As Integer, j As Byte, lenombre As Byte
Dim tirage As Object, letirage As Variant
Dim k As Byte
Randomize Timer
Set tirage = CreateObject("scripting.dictionary")
For i = 1 To 400
For j = 1 To 7
lenombre = Int(49 * Rnd(1) + 1)
If Not tirage.Exists(lenombre) Then
tirage.Add lenombre, j
Else
j = j - 1
End If
Next
letirage = tirage.Keys
For k = 0 To tirage.Count - 1
Cells(i, k + 1).Value = letirage(k)
Next
tirage.removeall
Next
Application.ScreenUpdating = True
Set tirage = Nothing
End Sub
"HARPER BEN" a écrit dans le message de
news:bonjour,
Je connnais tres mal Excel et je voudrais créer un mini
"programme"
capable de me donner 400 jeux de loto. C'est à dire me donner 400
sériede 7 nombre différents compris entre 1 et 49.
J'ai pensé a =alea(1:49) mais ca peut tres bien me donner 2x le
meme
nombre parmis les sept et avoir 2X ou plus la meme combinaison.
Quelqu'un a-t-il une idée ou une piste ?