Novità

Per Mike58 o chi riesce

solare

Advanced Member >PLATINUM<
Messaggi
1.368
Punti reazione
29
Punti
48
Ciao, volevo chiedere se è possibile inserire in questo listato la possibilità dell'ordinamento automatico dei dati ottenuti,dal più piccolo al più grande.
Codice:
Sub Main()
   Dim nua(4005,16),nn(2)
   'ee = DataEstrToIdEstr (31,12,2009)
   ee = InputBox("DA QUALE DATA INIZIARE"," DATA ","31/12/2013")
   ms = CInt(InputBox("In quale mese? ",,1))
   If ms = "" Then Exit Sub
   'r = CInt(InputBox("Di quale ruota? ",,5))
   'If r = "" Then Exit Sub
   'ru(1) = r
   q = CInt(InputBox("Quanti ambi ed estratti vuoi visualizzare ? ",,20))
   If q = "" Then Exit Sub
   '
   ResetTimer
   ReDim ru(0)
   r = ScegliRuote(ru)
   fin = EstrazioneFin
   ResetTimer
   '------------init tabella ------------------
   ReDim atitoli(15)
   atitoli(1) = " "
   atitoli(2) = " Numero "
   atitoli(3) = " Frequenza "
   atitoli(4) = " Ritardo Attuale "
   atitoli(5) = " Anno_2016 "
   atitoli(6) = " Anno_2015 "
   atitoli(7) = " Anno 2014 "
   atitoli(8) = " Anno 2013 "
   atitoli(9) = " Anno 2012 "
   atitoli(10) = " Anno 2011 "
   atitoli(11) = " Anno 2010 "
   atitoli(12) = " Anno 2017 "
   atitoli(13) = " Anno 2018 "
   atitoli(14) = " Rit Sto "
   atitoli(15) = " "
   Call InitTabella(atitoli,1,,3,5)
   For es = PrimaSuccessiva(ee) To fin
      If Mese(es) = ms Then
         co = 0
         For x = 1 To 89
         'x = cg
         For y = x + 1 To 90
         'For x = 1 To 90
            'If x <> y Then
            co = co + 1
            nua(co,1) = co
            nn(1) = x
            nn(2) = y
            nua(co,2) = StringaNumeri(nn)
           ' nua(co,3) = y

            k = SerieFreqTurbo(es,es,nn,ru,2)
            rt = SerieRitardoTurbo(Ini,fin,nn,ru,2)
            rs = SerieStoricoTurbo(Ini,fin,nn,ru,2)
            nua(co,4) = nua(co,4) + k
            nua(co,5) = rt
            nua(co,15) = rs
            k1 = 0
            If Anno(es) = 2016 Then k1 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,6) = nua(co,6) + k1
            k2 = 0
            If Anno(es) = 2015 Then k2 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,7) = nua(co,7) + k2
            k3 = 0
            If Anno(es) = 2014 Then k3 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,8) = nua(co,8) + k3
            k4 = 0
            If Anno(es) = 2013 Then k4 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,9) = nua(co,9) + k4
            k5 = 0
            If Anno(es) = 2012 Then k5 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,10) = nua(co,10) + k5
            k6 = 0
            If Anno(es) = 2011 Then k6 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,11) = nua(co,11) + k6
            k7 = 0
            If Anno(es) = 2010 Then k7 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,12) = nua(co,12) + k7
            k8 = 0
            If Anno(es) = 2017 Then k8 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,13) = nua(co,13) + k8
            k9 = 0
            If Anno(es) = 2018 Then k9 = SerieFreqTurbo(es,es,nn,ru,2)
            nua(co,14) = nua(co,14) + k9
            Call Messaggio("Tempo di Elaborazione : " & TempoTrascorso)
            Call AvanzamentoElab(Ini,fin,es)
         Next
         Next
         If ScriptInterrotto Then Exit For
      End If
   Next
   OrdinaMatrice nua,- 1,4
   ColoreTesto 2
   Scrivi Space(10) & "Dal " & ee & " al " & DataEstrazione(fin),1
   ColoreTesto 0
   Scrivi "I " & q & " Numeri più frequenti " & " a " & StringaRuote(ru) & " nel mese di " & MeseNome(ms),1
   Scrivi
   For z = 1 To q
      ReDim avalori(15)
      avalori(1) = " "
      avalori(2) = nua(z,2)
      avalori(3) = nua(z,4)
      avalori(4) = nua(z,5)
      avalori(5) = nua(z,6)
      avalori(6) = nua(z,7)
      avalori(7) = nua(z,8)
      avalori(8) = nua(z,9)
      avalori(9) = nua(z,10)
      avalori(10) = nua(z,11)
      avalori(11) = nua(z,12)
      avalori(12) = nua(z,13)
      avalori(13) = nua(z,14)
      avalori(14) = nua(z,15)
      avalori(15) = " "
      Call AddRigaTabella(avalori,,,3)
      For xx = 5 To 12
         Call SetColoreCella((xx),4,1)
         If avalori(5) > 0 And avalori(6) > 0 And avalori(7) > 0 And avalori(8) > 0 And avalori(9) > 0 And avalori(10) > 0 And avalori(11) > 0 And avalori(12) > 0 Then
            Call SetColoreCella((xx),6,1)
            Call SetColoreCella(2,6,1)
         End If
      Next
      'If avalori(5) = 0 And avalori(6) > 0 And avalori(7) > 0 And avalori(8) > 0 And avalori(9) > 0 Then Call SetColoreCella(2,vbGreen)
      'If avalori(5) > 0 Then Call SetColoreCella(2,2,4)
      'If rit = 0 Then Call SetColoreCella(4,3,2)
      If avalori(4) = 0 Then Call SetColoreCella(4,3,2)
      Call SetColoreCella(1,1,0)
      Call SetColoreCella(15,1,0)
      k11 = k11 + avalori(5)
      k12 = k12 + avalori(6)
      k13 = k13 + avalori(7)
      k14 = k14 + avalori(8)
      k15 = k15 + avalori(9)
      k16 = k16 + avalori(10)
      k17 = k17 + avalori(11)
      k18 = k18 + avalori(12)
      k19 = k19 + avalori(13)
      'riga = Format2(nua(z,2)) & "-" & Format2(nua(z,3)) & Space(3) & Format2(nua(z,4)) & Space(10) & Format2(nua(z,5))
      'Scrivi Space(10) & riga,1
      'riga = ""
   Next
   ReDim avalori1(15)
   avalori1(1) = " "
   avalori1(5) = k11
   avalori1(6) = k12
   avalori1(7) = k13
   avalori1(8) = k14
   avalori1(9) = k15
   avalori1(10) = k16
   avalori1(11) = k17
   avalori1(12) = k18
   avalori1(13) = k19
   Call AddRigaTabella(avalori1,1,,3,5)
   Call SetTableWidth("100%")
   Call CreaTabella()
   Scrivi "Tempo di Elaborazione : " & TempoTrascorso
   Scrivi " Tabella listed by Mike58 ",1,- 1,3
End Sub
 

Mike58

Advanced Member >PLATINUM<
Messaggi
1.969
Punti reazione
34
Punti
48
Ciao Solare non saprei e non capisco cosa devi ottenere.
Il listati è datato e costruito in modo rigido all'epoca in esame, infatti manca il dato aggiornato dell'anno 2019.
Senza andare a fare modifiche inutili visti anche i tempi eccessivi di elaborazione, ti posso suggerire che ci sono 5 colonne in matrice bidimensionale che vengono gestite dal codice OrdinaMatrice e ordinati in fase decrescente in questo caso Frequenze.
Non Lo so agisci sul codice in esame e vedi cosa puoi ottenere per i tuoi ordinamenti.

esempio
nn(1) = x
nn(2) = y
nua(co,2) = StringaNumeri(nn)
nua(co,4) = nua(co,4) + k
nua(co,5) = rt
OrdinaMatrice nua,- 1,4
come puoi vedere il dato della colonna 4 conta le presenze e la matrice viene ordinata in modo decrescente(-1) per la colonna 4.

Ciao
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 07 dicembre 2019
    Bari
    19
    09
    20
    16
    01
    Cagliari
    76
    60
    80
    06
    47
    Firenze
    43
    88
    78
    73
    83
    Genova
    46
    20
    79
    54
    04
    Milano
    30
    31
    46
    24
    19
    Napoli
    42
    86
    20
    06
    07
    Palermo
    66
    04
    81
    53
    09
    Roma
    55
    81
    32
    25
    13
    Torino
    69
    21
    52
    32
    72
    Venezia
    44
    22
    37
    80
    32
    Nazionale
    19
    88
    32
    60
    90
Alto