generatore di numeri



  • generatore di numeri
    di incitatus (utente non iscritto) data: 08/11/2012 10:19:05

    salve,
    forse qualcunomi può autare, con exel 2007 ho fatto in modo di generare una seguenza di cinque numeri casuali, che si cambiano con il tasto f9, ma a me servirebbe un modo automatico che che cambi i numeri ogno tot di secondi, è possibile?
    premetto che sono piuttosto imbranato con il computer quindi la spiegazione dobrebbe essere molto elementare
    GRAZIE



  • di HarryBosch data: 08/11/2012 11:59:59

    Per utilizzare un comando a tempo è necessario agire tramite il vba, sfruttando il Timer ad esempio (che tra l'altro non è molto semplice da controllare).

    Conosci il vba, o hai mai provato a creare qualche macro?

    Quella delle estrazioni è una richiesta comune e difatti, avevo già creato un file che fa esattamente quello che dici: in questo esempio puoi impostare il tempo di attesa, il numero di estrazioni, e il numero minimo e massimo di estrazione.

    Facciamo così, intanto ti allego questo file, poi vediamo se riesci a sfruttarlo o adattarlo alla tua esigenza.



  • di Vecchio Frac data: 08/11/2012 12:15:52

    HarryBosch mi ha battuto sul tempo, sia perchè la sua soluzione è completa e anche carina da vedere, sia perchè il mio foglio è scarno e basato brutalmente su =CASUALE() ^_^
    Comunque il concetto di fondo rimane.
    Allego lo stesso la mia versione che sfrutta parimenti OnTime :P
    Concordo sul fatto che in certe situazioni si dovrebbe utilizzare l'API SetTimer e KillTimer, ma forse per certi utilizzi non spinti (dove non serve spaccare il millisecondo) è sufficiente OnTime.





  • generatore di numeri
    di incitatus (utente non iscritto) data: 08/11/2012 12:19:55

    grazie Harry,
    ci stiamo avvicinando a quello che chiedo.
    Se fosse possibile vorrei che i numeri rimassero sempre sulla stessa riga sostituendosi agli altri.
    ti ringrazio


  • generatori di numeri
    di incitatus (utente non iscritto) data: 08/11/2012 12:35:53

    ok Vecchio Frac
    ci siamo quasi, il fatto che sia scarna non mi interessa poi ci penserò io a creare una grafica adatta,
    ci sono due cose che devono essere modificate, il tempo e il running che è dolo di 5 volte.
    Immagino che hai creato una macro se è possibile averla e mi suggerisci dove posso intervenire penso che risolverò.
    grazie



  • di Vecchio Frac data: 08/11/2012 12:58:49

    Visto che hai Excel 2007, prosegui con il lavoro di HarryBosch.
    Cambiare il numero di volte del ciclo è molto semplice.
    La macro è già nel file, basta che apri l'editor di codice con Alt-F11 e navighi tra le schede (non mi ricordo più se ho messo tutto in un modulo oppure nel Foglio1... l'età avanza ^_^).





  • di HarryBosch data: 08/11/2012 14:14:35

    @ VecchioFrac
    Ho vinto io stavolta il vasetto d'olio ^_^

    Mi sembra di aver capito che ti interessa impostare un ciclo di ripetizioni casuali, più che un pulsante che attiva e disattiva l'estrazione.

    Ti ho quindi modificato leggermente il file: adesso trovi la casellina "ciclo" dove puoi inserire il numero di volte che verrà eseguita l'estrazione; estrazione che verrà riportata sempre nella stessa riga.

    Rimane come prima la scelta del tempo per ogni uscita, del totale dei numeri da estrarre, e la scelta del numero minimo e massimo che può essere estratto.
    Vedi il nuovo allegato "Estrazione a tempo - 1"


  • generatore di numeri
    di incitatus (utente non iscritto) data: 08/11/2012 16:44:54

    Risolto!!!!!!!!
    Io ringrazio ambedue, oltre a risolvere la mia esigenza mi avete anche insegnato qualcosina.
    Mi sembra giusto dirvi a cosa mi serve.
    Sono un ricevitore lotto, e a volte i miei clienti non sanno quali numeri giocare specialmente al 10 e lotto, in questo modo sincronizzando, per quel che è possibile, l'estrazione ogni 5 minuti con un monitor visibile , i clienti possono avere un idea su quali numeri giocare, poco importa se sono casuali tanto per vincere ci vuole solo tanta fortuna.




  • di Vecchio Frac data: 08/11/2012 18:12:54

    Bello. Un'applicazione pratica insomma :)
    Quindi non ti resta che curare l'estetica e... il gioco è fatto (uah uah uah come sono spiritoso ^_^)





  • di HarryBosch data: 08/11/2012 18:17:10

    Attenzione però che l'estrazione casuale potrebbe produrre dei numeri doppi sulla stessa riga.
    Se si parla di lotto, immagino che i numeri estratti debbano essere univoci e allora bisogna modificare leggermente il codice (ovvero verificare per ogni numero estratto che non sia già presente).

    Senza riallegarti un nuovo file, ti riporto l'estratto di routine che dovresti sostituire per garantire una estrazione univoca; all'interno della "Sub Estrazione()", sostituisci questo pezzo:

    Randomize (1)
    For c = 1 To num
    Cells(4, c + 1) = Int(Rnd() * (Valmax - Valmin + 1)) + Valmin
    Next c

    con quello che riporto sotto.

    Inoltre all'inizio, dove ci sono le dichiarazioni delle variabili, aggiungi le nuove, ovvero:
    Dim provv As Integer, trovato As Boolean, doppio As Range



     
    Do
        trovato = False
        Randomize (1)
        provv = Int(Rnd() * (Valmax - Valmin + 1)) + Valmin
        Set doppio = Range(Cells(4, 2), Cells(4, num + 1)).Find(provv, lookat:=xlWhole)
        If Not (doppio Is Nothing) Then
            trovato = True
        End If
    Loop Until Not trovato



  • di HarryBosch data: 08/11/2012 18:20:10

    Sapevo... ho dimenticato un pezzettino..
    mancava l'ultima riga del pezzettino nuovo di codice, ovvero
     
    Cells(4, c + 1) = provv



  • di Vecchio Frac data: 08/11/2012 19:58:54

    Il codice di HarryBosch è robusto e funziona.
    Ma prima o poi vi parlerò della mia routine per estrarre un numero univocamente da una serie, quindi senza doppi e ripetizioni, senza necessità di ciclo Do ... Loop e .Find annesso ^_^




  • generatore di numeri
    di incitatus (utente non iscritto) data: 09/11/2012 12:58:49

    salve,
    i due programmini funzionano alla grande, ma ora mi si pone un altro problema.
    Ho provato a convertire il file in HTML ma non funziona, mi sapreste dire il motivo?
    vi ringrazio
    P.S.
    Nella vostra risposta considerate sempre che sono imbranato in materia