Frequenze leggermente avanzate



  • Frequenze leggermente avanzate
    di Alasque data: 02/05/2013 13:05:18

    Ciao a Tutti,

    ho un archivio di estrazioni dal quale vorrei estrarre non solo quante volte è sortito ogni numero da 1 a 90 ma anche le date di ogni singola estrazione e quante estrazioni intercorrono da quando era sortito l'ultima volta precedente. c'è un'anima gentile che mi possa aiutare?

    Grazie in anticipo



  • di totygno71 data: 02/05/2013 14:52:58

    Ciao...
    ma è sempre lo stesso prgetto?
    Perche se è cosi la prima parte del problema a cui ti riferisci ( quante volte è sortito ogni numero da 1 a 90) mi pareva fosse risolto... O mi sbaglio?



  • di Alasque data: 02/05/2013 15:41:17

    Ciao Totygno71,

    il foglio è sempre lo stesso ma è una nuova idea da aggiungere al foglio stesso



  • di Alasque data: 02/05/2013 17:06:32

    ho predisposto una cartella dove far pervenire i risultati della ricerca delle frequenze. per ogni numero (allego file modificato) il risultato mi dovrebbe dare, nella cartella frequenze, ogni numero quando è sortito e dopo quante estrazioni rispetto alla precedente.



  • di totygno71 data: 02/05/2013 18:38:33

    Ma...
    il foglio ritardi lo gestisci manualmente??? intendo il metteri in ordine dal piu ritardatario al meno ritardatario???
    Se si ... non hai pensato che basta aggiungere una riga di codice per averlo in automatico???
    Per il resto vediamo se arrivano rinforzi altrimenti ti scrivo io qualcosa... ^_^



  • di Alasque data: 02/05/2013 19:34:22

    non ho problemi ad ordinarli manualmente.
    di rinforzi.... nemmeno l'ombra



  • di Alasque data: 03/05/2013 16:05:02

    Ciao Totygno71,
    di rinforzi nemmeno l'ombra...

    che facciamo?



  • di totygno71 data: 03/05/2013 20:22:51

    Stasera non ho tempo... domani, se nessuno si fa avanti ti prometto che ti do un aiutino...



  • di Vecchio Frac data: 03/05/2013 21:18:59

    Io ho guardato il file ma non è una cosa da fare in cinque minuti :)
    I range interessati son quelli dell'archivio?





  • di totygno71 data: 04/05/2013 11:19:57

    Buondi...

    Il Numero 88 è sortito volte

    Distanze:

    1: è sortito sta per? (cosa bisogna inserire?)
    2: distanze sta per?
    3. volte immagino quante volte è uscito in totale...





  • di Vecchio Frac data: 04/05/2013 12:45:34

    Tra "sortito" e "volte" bisogna inserire un numero, cioè il numero di volte in cui quel numero è uscito ("sortito").
    Esempio:
    "Il Numero 88 è sortito 15 volte "

    La distanza è probabilmente il numero di estrazioni tra un'uscita e la prossima, sempre dello stesso numero.

    Il range è quello dell'archivio?





  • di Alasque data: 04/05/2013 13:06:58

    Ciao Vecchio Frac,

    è proprio come dici tu.
    a me però serve, dove c'è "Distanze:" tutte le date di sortita di ogni numero e il nr. di estrazioni intercorso tra una sortita e quella precedente. esempio:
    -----------------------------------------------------------------------
    Il Numero 88 è sortito 15 volte

    Distanze:
    21/02/13 1996 1989 7
    06/04/13 2015 1996 19
    -----------------------------------------------------------------------
    dove 2015 è il prog di estrazione e 1996 è il prog di quando era stato estratto l'88 precedente



  • di totygno71 data: 04/05/2013 13:07:23

    @VF
    si il range è quello in archivio...
    Ammazza non sapevo fossi un'esperto "lottologo" ^_^



  • di totygno71 data: 04/05/2013 20:13:07

    Alasqe
    come promesso ho iniziato a lavorare al tuo file...
    ma già al primo numero (1) questo è stato estratto 161 volte e allora mi chiedo tu vuoi che vi siano tutte le 161 date in cui è stato estratto? se lo facciamo per tutti 90 numeri arriviamo a circa 20.000 date... un database enorme...
    Forse ho capito male...?



  • di Alasque data: 04/05/2013 20:34:36

    e creare automaticamente le 90 cartelle?



  • di totygno71 data: 04/05/2013 20:47:35

    In che senso 90 cartelle?



  • di Alasque data: 04/05/2013 20:51:39

    che una volta fatto il calcolo , per ogni numero crea una sheet



  • di totygno71 data: 04/05/2013 21:10:07

    90 fogli???

    Non dico sulla fattibilità... ma sulla fruibilità dei dati mi pare una boiata... ^_^



  • di Alasque data: 04/05/2013 22:05:17

    diciamo he a me potrebbe interessare anche solo il risultato, cioè la frequenza media



  • di Alasque data: 06/05/2013 10:59:38

    mi avete abbandonato?



  • di Vecchio Frac data: 06/05/2013 21:04:58

    C'è un po' da pensarci e un po' di codice da scrivere :)





  • di Alasque data: 06/05/2013 21:21:58

    Grazie, Vecchio Frac



  • di totygno71 data: 07/05/2013 11:18:49

    Non trovo piu il file
    lo puoi rimettere che forse riesco a scrivere qualcosa piu tardi?



  • di Alasque data: 07/05/2013 11:53:08

    fatto, grazie



  • di totygno71 (utente non iscritto) data: 07/05/2013 13:14:39

    Sostituisci il codice con questo...
    poi dimmi come si calcola la frequenza media e dove inserirla? (Numero di estrazioni tot diviso numero di volte che è uscito?
    cit: "a me potrebbe interessare anche solo il risultato, cioè la frequenza media"

     
    Option Explicit
    Sub ritardatari()
    Dim c As Range, rng As Range, x As Range
    Dim rig As Integer, n As Integer, r As Integer, rigD As Integer
    Dim shF As Worksheet
    
    r = 1
    
    Set shF = Worksheets("Frequenze")
    n = Range("C65535").End(xlUp).Value
    
    Set rng = Sheets("Ritardi").[A5:A94]
    Sheets("Ritardi").[B5:B94].ClearContents
    
    For Each c In rng
    If c.Value > 90 Then Exit Sub
    
    rig = Range("B65535").End(xlUp).Value + 3
    rigD = rig
    5:
    
        For Each x In Range(Cells(rig, 5), Cells(rig, 10))
            
            If x.Value = c.Value Then
            c.Offset(0, 1).Value = n - Cells(rig, 3).Value
            GoTo 10:
            Exit For
            End If
    
        Next x
    
    rig = rig - 1
    GoTo 5:
    
    10:
    Next c
    
    n = 1
    For r = 1 To 357 Step 4
           
       shF.Cells(r, 4).Value = Application.WorksheetFunction.CountIf(Range(Cells(4, 5), Cells(rigD, 10)), n)
       n = n + 1
    
    Next r
    
    End Sub



  • di Alasque data: 07/05/2013 13:27:00

    Numero di estrazioni tot diviso numero di volte che è uscito? SI

    Nella cartella FREQUENZE,
    il risultato potrebbe essere visibile aggiungendo il campo "Media:" e nella cella seguente il risultato

    Il Numero 88 è sortito volte Media:



  • di totygno71 data: 07/05/2013 13:43:51

    Basta aggiungere una riga al codice già esistente nell'ultimo ciclo

    shF.Cells(r + 2, 4).Value = rigD / shF.Cells(r, 4).Value
     
    n = 1
    For r = 1 To 357 Step 4
           
       shF.Cells(r, 4).Value = Application.WorksheetFunction.CountIf(Range(Cells(4, 5), Cells(rigD, 10)), n)
       shF.Cells(r + 2, 4).Value = rigD / shF.Cells(r, 4).Value
       n = n + 1
    
    Next r
    



  • di totygno71 data: 07/05/2013 13:50:47

    Oppure se lo vuoi a fianco..
     
    n = 1
    For r = 1 To 357 Step 4
           
       shF.Cells(r, 4).Value = Application.WorksheetFunction.CountIf(Range(Cells(4, 5), Cells(rigD, 10)), n)
       shF.Cells(r, 6).Value = "Media:"
       shF.Cells(r, 7).Value = rigD / shF.Cells(r, 4).Value
       n = n + 1
    
    Next r
    



  • di totygno71 data: 07/05/2013 13:56:40

    Altro errorino assegna a rigD questo valore

    rigD = rig - 3

    anzichè

    rigD = rig



  • di Alasque data: 07/05/2013 13:57:43

    Riesci a farlo proprio come segue?

    Nella cartella FREQUENZE,
    il risultato potrebbe essere visibile aggiungendo il campo "Media:" e nella cella seguente il risultato



  • di totygno71 data: 07/05/2013 14:02:33

    Infatti il secondo è cosi...
    Ti allego tutto il codice:
     
    Option Explicit
    Sub ritardatari()
    Dim c As Range, rng As Range, x As Range
    Dim rig As Integer, n As Integer, r As Integer, rigD As Integer
    Dim shF As Worksheet
    
    r = 1
    
    Set shF = Worksheets("Frequenze")
    n = Range("C65535").End(xlUp).Value
    
    Set rng = Sheets("Ritardi").[A5:A94]
    Sheets("Ritardi").[B5:B94].ClearContents
    shF.Range("D:D").ClearContents
    shF.Range("G:G").ClearContents
    
    
    For Each c In rng
    If c.Value > 90 Then Exit Sub
    
    rig = Range("B65535").End(xlUp).Value + 3
    rigD = rig - 3
    5:
    
        For Each x In Range(Cells(rig, 5), Cells(rig, 10))
            
            If x.Value = c.Value Then
            c.Offset(0, 1).Value = n - Cells(rig, 3).Value
            GoTo 10:
            Exit For
            End If
    
        Next x
    
    rig = rig - 1
    GoTo 5:
    
    10:
    Next c
    
    n = 1
    For r = 1 To 357 Step 4
           
       shF.Cells(r, 4).Value = Application.WorksheetFunction.CountIf(Range(Cells(4, 5), Cells(rigD, 10)), n)
       shF.Cells(r, 6).Value = "Media:"
       shF.Cells(r, 7).Value = rigD / shF.Cells(r, 4).Value
       n = n + 1
    
    Next r
    
    End Sub
    



  • di Alasque data: 07/05/2013 14:06:22

    direi che è ok... grazie



  • di totygno71 data: 07/05/2013 14:09:14

    Prego!
    Ciao



  • di Alasque data: 07/05/2013 15:47:39

    Ciao Totygno71,

    facendo un riscontro col nr. 1, mentre le frequenze mi dicono che è sortito 159 volte, il semplice filtro mi dice che è sortito 161 volte. puoi dargli un'occhiata?

    Grazie



  • di totygno71 (utente non iscritto) data: 07/05/2013 17:37:12

    a me risulta le frequenze 161 anche facendo il controllo con una formula conta.se 1 mi da il risultato di 161



  • di Alasque data: 07/05/2013 20:06:32

    Anche a me col conta.se dà 161 ma se provi ad eseguire la macro ti dice che è sortito 159 volte



  • di totygno71 (utente non iscritto) data: 07/05/2013 20:17:40

    no mi da 161



  • di totygno71 (utente non iscritto) data: 07/05/2013 20:19:56

    provare allegato per credere...



  • di Alasque data: 07/05/2013 20:36:35

    spero che tu non voglia umiliarmi chiedendomi cosa era ma ora va bene



  • di totygno71 (utente non iscritto) data: 07/05/2013 20:39:18

    No, Non lo farebbi mai! ^_^



  • di Alasque data: 07/05/2013 20:40:51

    mi mancavano 3 estrazioni



  • di totygno71 (utente non iscritto) data: 07/05/2013 20:54:03

    bhe a sto punto del progetto mi sento di dirti che....
    se fai una vincita mi spetta una percentuale per il lavoro fatto!!! ^_^



  • di Alasque data: 07/05/2013 20:55:32

    dovrai ancora sudare...... siamo solo all'inizio....



  • di totygno71 data: 07/05/2013 20:56:57



    Ma qui sono in tanti ad avere bisogno di aiuto... e io non riesco a stare dietro a tutti...



  • di Alasque data: 07/05/2013 20:58:38

    scherzavo



  • di totygno71 data: 07/05/2013 21:00:57

    quindi direi che faccio una macro che mi calcola la percentuale che mi spetta... bahahahah



  • di Alasque data: 08/05/2013 11:22:46

    Ciao Totygno71,

    ti chiedo se è possibile fare un pò di pulizia nella cartella "Frequenze":

    in questo momento, la riga tipica di risultato è:

    Il Numero 1 è sortito 161 volte Media: 12,59

    Distanze:

    Vorrei farlo diventare:


    Numero Sortita V. Media

    1 161 12,59
    2 123 16,48
    ecc.



  • di totygno71 data: 08/05/2013 13:47:18

    alasque...
    è meglio che ti rivolgi alla comunità e non direttamente a me (hai più possibilità di risolvere il problema)... chi ha tempo e voglia poi ti risponderà...
    Ciao



  • di totygno71 data: 08/05/2013 14:09:10

    prova l'allegato

    @VF criticami tutto ma non il mio pulsante/cestino!



  • di Alasque data: 08/05/2013 14:23:57

    si nu bijou

    grazie