Pb. défilement de tirage toutes les 45 secondes

Bonjour toutes et tous,

Besoin d'un coup de pouce, merci d'avance

Difficulté:

-un tirage aléatoire de 1 à 99 chiffres toutes les 45 secondes

bon il exécute dès à présent

je vais repartir avec ses informations ci-dessous :

http://www.mdf-xlpages.com/modules/publisher/item.php?itemid=14

edit : re-modifier test 7 25082017 à 21h45

crdlt,

André

Re, bonsoir

je l'ai re-modifié apparemment c'est presque çà, j'ai réussi un petit peu est éliminé le superflu sur l'ancienne version, me reste à régler le temps d'affichage

crdlt,

André

Bonsoir,

Ce n'est pas la première fois que je vois ton fichier, mais j'en suis toujours dubitatif car je n'ai toujours pas compris où tu voulais finalement en arriver !

Et ton code éparpillé dans trop de modules, plein de scories non éliminées n'aide pas à définir une trajectoire !

Quoiqu'il en soit, pour diversifier un peu, voici une méthode pour tirer des nombre de 1 à 99, complètement étrangère à tout ce qu'on peut voir dans ton code.

Dim StopTirage As Boolean

Sub Tirage99(Optional Init As Boolean)
    Static Tir(1 To 99) As Integer, n%
    Dim tx$, k$, i%, x%
    If Init Then
        For i = 1 To 99
            tx = tx & Chr(i + 32)
        Next i
        Randomize
        For i = 1 To 99
            x = Int(Len(tx) * Rnd + 1)
            k = Mid(tx, x, 1)
            Tir(i) = Asc(k) - 32
            tx = Replace(tx, k, "")
        Next i
        n = 0
    End If
    If StopTirage Then Exit Sub
    n = n + 1
    MsgBox Tir(n)
    If n < 99 Then Application.OnTime Now + TimeValue("00:00:45"), "Tirage99"
End Sub

Sub InitTirage()
    StopTirage = False
    Tirage99 True
End Sub

Sub ArrêtTirage()
    StopTirage = True
End Sub

Sub RepriseTirage()
    StopTirage = False
    Tirage99
End Sub

La procédure principale est Tirage99. Elle est lancée par InitTirage : lors de ce lancement, elle effectue le tirage aléatoire des 99 numéros et le stocke dans un tableau, elle affiche le premier numéro tiré dans un message (mais peut aussi bien le mettre n'importe où...) et se relance pour afficher toutes les 45 s (ou le temps qu'on mettra...) les numéros tirés suivants.

On peut l'interrompre momentanément avec ArrêtTirage (qui intervient en passant une variable booléenne niveau module à True.

On reprend alors où on en était avec RepriseTirage (il convient de laisser un temps au moins équivalent à l'intervalle programmé entre deux affichages entre Arrêt et Reprise).

Si après un arrêt on relance InitTirage, le tirage sera complètement réinitialisé...

Cordialement.

Bonjour toutes et tous et bon week-end

Merci MFerrand, je vais tout refaire avec toutes les aides que vous m'avez mis depuis le début

Les Objectifs :

1/ Un tirage s'effectue toutes les 45 secondes est s'affiche sur la feuil1 cellule O3

[*] a) et l'enregistre le numéro sortie sur la feuil1 d'une colonne masqué par exemple

[*] b) le temps pourra être par la suite modifiable sur la même feuille par des bouton choix : 45sec. 1 min ou 2.

[*] c) des checkbox groupés aux nombres de 99 (si numéro a été tiré aléatoirement la checkbox sera coché)

2/ Une fois un chiffre aléatoirement tiré est visible sur la feuil1 dans la cellule O3, l'enregistrera sur la Feuil1 du classeur par exemple par incrémentation dans une colonne masqué , par exemple.

3/ Dès que les 99 tirages effectués et ainsi grâce au 99 tirages sur la Feuil1 recopié, le tirage annonce un message de fin msgbox par exemple ou fin de partie peu importe.

4/ le tirage toutes les xx secondes ne devra pas comporter de doublon, ni de chiffre 0 ou 100 puisqu'il doit être de 1 à 99.

5/ les cellules de la Feuil1 comportant les chiffres de 1 à 99 une checkbox c'est à dire 99 checkbox si le chiffre est tiré il sera systématiquement la checkbox sur coché est grisé

merci en tout cas, j'ai du travail à faire en espérant que cela puisse être réalisable même si je mettrais le temps j'y arriverai grâce à vos aides à toutes et vos suggestions

crdlt,

André

Rechercher des sujets similaires à "defilement tirage toutes secondes"