Al momento vorrei sfruttare entrambe le statistiche, tagliando le percentuali più basse. II mio excel mi fornisce le due "strisce" di 6 colonne coi numeri in verticale. Appena chiudo con precisione le percentuali faccio un'elaborazione sui 90 e ti dico. Per fare un esperimento grossolano ora lancio brutalmente uno 0,1,2,3 sulle colonne filtro per l'estrazione di stasera e ti dico quante colonne otteniamo. Mi manca purtroppo la possibilità di filtrare anche le statistiche sulle stringhe dei risultati CITAZIONE (Beppignello @ 20/2/2024, 08:54) questo è il sintetico con i punti totali sulle 6 col.verticali e le percentuali come si distribuiscono TabelloneNuovoSe-4SinteticoPuntiColonneCODICE Option Explicit Sub Main Dim n,Ritardo,RitardoMax,IncrRitMax,Frequenza,Fine,riga,x,y,rit,riga1,riga2,riga3,z,k,aRetRitardi,aRetIdEstr,rita,xqt,xq,teo,trenta,teo90,ctnpr,filtro,t,last Dim retesito,retcolpi,retestratti,retidestr,es,f,q,fin1,fin2,fin3,fin4,qz,e,f1,el,qw,re,disce,asce,yy,lastult,CICLOAMBIVERGINI,DAL,nu,i1,i2,t1,t2 Dim colonne,scolonna,classe,s,j,ww,u,jj,rigaout,h1,h0,po,Linea,w1,w2,vv,Vert1,Vert2,Vert3,Vert4,Vert5,Vert6,Inizio,a,fpre,b,punti1,punti2,punti3,punti4,punti5,punti6,h Dim fr4(90),numeri(90),vergini(9999),cap(90,2),rigav(6,90),punteggio(7,7) Dim p1,p2,p3,p4,p5,p6 k = 1 f = EstrazioniArchivioSE fpre = InputBox("Estrazione n.",,f) ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' For t1 = 1 To 6 For t2 = 1 To 6 punteggio(t1,t2) = 0 Next Next '''loop dell'archivio estrazioni superenalotto For b = 1 To f Fine = fpre - 1 Messaggio(fpre & " / " & Fine) fin1 = Fine - 89 CICLOAMBIVERGINI = 380 Vert1 = "":Vert2 = "":Vert3 = "":Vert4 = "":Vert5 = "":Vert6 = "" ReDim aNum(90),stella(90),an(90),en(1) For k = 1 To Fine ''' calcola RitardoCombinazione For n = 1 To 90 aNum(n) = aNum(n) + 1 stella(n) = stella(n) + 1 Next aNum(EstrattoSE(k,1)) = 0 aNum(EstrattoSE(k,2)) = 0 aNum(EstrattoSE(k,3)) = 0 aNum(EstrattoSE(k,4)) = 0 aNum(EstrattoSE(k,5)) = 0 aNum(EstrattoSE(k,6)) = 0 stella(EstrattoSE(k,8)) = 0 ''''''''''''''''' If k >= fin1 Then fr4(EstrattoSE(k,1)) = fr4(EstrattoSE(k,1)) + 1 fr4(EstrattoSE(k,2)) = fr4(EstrattoSE(k,2)) + 1 fr4(EstrattoSE(k,3)) = fr4(EstrattoSE(k,3)) + 1 fr4(EstrattoSE(k,4)) = fr4(EstrattoSE(k,4)) + 1 fr4(EstrattoSE(k,5)) = fr4(EstrattoSE(k,5)) + 1 fr4(EstrattoSE(k,6)) = fr4(EstrattoSE(k,6)) + 1 End If ''''''''''''''''' Next ''' riepilogo inserisci in tabella numeri con uguale ritardo per tabellone For x = 0 To 200 riga = "" ReDim nun(6) For y = 1 To 90 If x = aNum(y) Then riga = riga & Format2(y) & " " ctnpr = ctnpr + 1 po = PosizioneSE(Fine - x,y) nun(po) = Format2(y) End If Next If x < 10 Then rit = "00" & x End If If x > 9 And x < 100 Then rit = "0" & x End If If x > 99 Then rit = x End If ReDim Orig(8) Orig(1) = Format2(EstrattoSE(Fine - x,1)) Orig(2) = Format2(EstrattoSE(Fine - x,2)) Orig(3) = Format2(EstrattoSE(Fine - x,3)) Orig(4) = Format2(EstrattoSE(Fine - x,4)) Orig(5) = Format2(EstrattoSE(Fine - x,5)) Orig(6) = Format2(EstrattoSE(Fine - x,6)) Orig(8) = Format2(EstrattoSE(Fine - x,8)) Call StatisticaFormazioneSE(Orig,1,Ritardo,RitardoMax,IncrRitMax,Frequenza,Fine - 360,Fine) riga1 = FormatSpace(riga,20) : riga2 = FormatSpace(Ritardo,5) : riga3 = FormatSpace(RitardoMax,1) ' '''elenco ritardi ' Call ElencoRitardiSE(Orig,1,Fine - 360,Fine,aRetRitardi,aRetIdEstr) ' xqt = UBound(aRetRitardi) ' xq = xqt - 11 : rita = "" ' For xq = xq + 1 To xqt - 1 ' rita = rita & Format2(aRetRitardi(xq)) & "." ' Next teo =((14/15)^rit)*6 teo90 =((14/15)^rit)*90 trenta = "" For y = 1 To 90 If Int(aNum(y)) >= 31 Then trenta = trenta & Format2(y) & "." End If Next If riga <> "" Then '''esponi nel tabellone i ritardi dei 90 numeri in ordine di estrazione come da sestine originale Linea = "" For w1 = 1 To 6 vv = 0 For w2 = 1 To 6 If nun(w2) = Orig(w1) Then Linea = Linea & Orig(w1) & " " If w1 = 1 Then Vert1 = Vert1 & Orig(w1) & "." If w1 = 2 Then Vert2 = Vert2 & Orig(w1) & "." If w1 = 3 Then Vert3 = Vert3 & Orig(w1) & "." If w1 = 4 Then Vert4 = Vert4 & Orig(w1) & "." If w1 = 5 Then Vert5 = Vert5 & Orig(w1) & "." If w1 = 6 Then Vert6 = Vert6 & Orig(w1) & "." vv = 1 End If Next If vv <> 1 Then Linea = Linea & "-- " Next ''''accumula estratti usciti verticali nelle 6 posizioni rigav(1,Orig(1)) = Orig(1) rigav(2,Orig(2)) = Orig(2) rigav(3,Orig(3)) = Orig(3) rigav(4,Orig(4)) = Orig(4) rigav(5,Orig(5)) = Orig(5) rigav(6,Orig(6)) = Orig(6) '''' If(90 - ctnpr) >= teo90 Then ReDim av(20),av5(90) Call SplitByChar(riga1," ",av) last = UBound(av) For t = 0 To last - 1 If av(t) <> "" Then av5(t + 1) = av(t) q = q + 1 an(q) = av(t) End If Next filtro = filtro & StringaNumeri(av5,".") & "." End If End If Next Scrivi "-------------------------------------------------------------------------------------" Scrivi "Estrazione SUPERENALOTTO AL CONCORSO n. " & fpre & "/" & DataEstrazioneSE(fpre) & "......ult.estr.archivio..." & f,1,2,4 Inizio = "" ReDim nr(6) For a = 1 To 6 Inizio = Inizio & Format2(EstrattoSE(fpre,a)) & " " nr(a) = Format2(EstrattoSE(fpre,a)) Next Scrivi fpre & " " & DataEstrazioneSE(fpre) & " Sestina Estratta " & Inizio,1,2,4 fpre = fpre - 1 ''''''''''''''''''''''''''1 colonna ReDim av1(50) Call SplitByChar(Vert1,".",av1) last = UBound(av1) - 1 punti1 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti1 = punti1 + 1 If Int(nr(2)) = Int(av1(h)) Then punti1 = punti1 + 1 If Int(nr(3)) = Int(av1(h)) Then punti1 = punti1 + 1 If Int(nr(4)) = Int(av1(h)) Then punti1 = punti1 + 1 If Int(nr(5)) = Int(av1(h)) Then punti1 = punti1 + 1 If Int(nr(6)) = Int(av1(h)) Then punti1 = punti1 + 1 Next punteggio(1,punti1) = punteggio(1,punti1) + 1 '''''''''''''''''''''''''2 colonna ReDim av1(50) Call SplitByChar(Vert2,".",av1) last = UBound(av1) - 1 punti2 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti2 = punti2 + 1 If Int(nr(2)) = Int(av1(h)) Then punti2 = punti2 + 1 If Int(nr(3)) = Int(av1(h)) Then punti2 = punti2 + 1 If Int(nr(4)) = Int(av1(h)) Then punti2 = punti2 + 1 If Int(nr(5)) = Int(av1(h)) Then punti2 = punti2 + 1 If Int(nr(6)) = Int(av1(h)) Then punti2 = punti2 + 1 Next punteggio(2,punti2) = punteggio(2,punti2) + 1 '''''''''''''''''''''''3 colonna ReDim av1(50) Call SplitByChar(Vert3,".",av1) last = UBound(av1) - 1 punti3 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti3 = punti3 + 1 If Int(nr(2)) = Int(av1(h)) Then punti3 = punti3 + 1 If Int(nr(3)) = Int(av1(h)) Then punti3 = punti3 + 1 If Int(nr(4)) = Int(av1(h)) Then punti3 = punti3 + 1 If Int(nr(5)) = Int(av1(h)) Then punti3 = punti3 + 1 If Int(nr(6)) = Int(av1(h)) Then punti3 = punti3 + 1 Next punteggio(3,punti3) = punteggio(3,punti3) + 1 ''''''''''''''''''''''''''4 colonna ReDim av1(50) Call SplitByChar(Vert4,".",av1) last = UBound(av1) - 1 punti4 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti4 = punti4 + 1 If Int(nr(2)) = Int(av1(h)) Then punti4 = punti4 + 1 If Int(nr(3)) = Int(av1(h)) Then punti4 = punti4 + 1 If Int(nr(4)) = Int(av1(h)) Then punti4 = punti4 + 1 If Int(nr(5)) = Int(av1(h)) Then punti4 = punti4 + 1 If Int(nr(6)) = Int(av1(h)) Then punti4 = punti4 + 1 Next punteggio(4,punti4) = punteggio(4,punti4) + 1 ''''''''''''''''''''''''''5 colonna ReDim av1(50) Call SplitByChar(Vert5,".",av1) last = UBound(av1) - 1 punti5 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti5 = punti5 + 1 If Int(nr(2)) = Int(av1(h)) Then punti5 = punti5 + 1 If Int(nr(3)) = Int(av1(h)) Then punti5 = punti5 + 1 If Int(nr(4)) = Int(av1(h)) Then punti5 = punti5 + 1 If Int(nr(5)) = Int(av1(h)) Then punti5 = punti5 + 1 If Int(nr(6)) = Int(av1(h)) Then punti5 = punti5 + 1 Next punteggio(5,punti5) = punteggio(5,punti5) + 1 ''''''''''''''''''''''''6 colonna ReDim av1(50) Call SplitByChar(Vert6,".",av1) last = UBound(av1) - 1 punti6 = 0 For h = 0 To last If Int(nr(1)) = Int(av1(h)) Then punti6 = punti6 + 1 If Int(nr(2)) = Int(av1(h)) Then punti6 = punti6 + 1 If Int(nr(3)) = Int(av1(h)) Then punti6 = punti6 + 1 If Int(nr(4)) = Int(av1(h)) Then punti6 = punti6 + 1 If Int(nr(5)) = Int(av1(h)) Then punti6 = punti6 + 1 If Int(nr(6)) = Int(av1(h)) Then punti6 = punti6 + 1 Next punteggio(6,punti6) = punteggio(6,punti6) + 1 ''''''''''''''''''''''' Scrivi "-------------------------------------------------------------------------------------" Scrivi "Tabellone ritardi SUPERENALOTTO AL CONCORSO n. " & Fine & "/" & DataEstrazioneSE(Fine),1,2,2 Scrivi "Riepilogo numeri nelle 6 posizioni verticali del Tabellone Analitico ",1 Scrivi Fine & " Punti " & punti1 & " Vert.1 : " & Vert1,1 Scrivi Fine & " Punti " & punti2 & " Vert.2 : " & Vert2,1 Scrivi Fine & " Punti " & punti3 & " Vert.3 : " & Vert3,1 Scrivi Fine & " Punti " & punti4 & " Vert.4 : " & Vert4,1 Scrivi Fine & " Punti " & punti5 & " Vert.5 : " & Vert5,1 Scrivi Fine & " Punti " & punti6 & " Vert.6 : " & Vert6,1 Scrivi "-------------------------------------------------------------------------------------" Scrivi If fpre = 50 Then Exit For Next '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''riepilogo percentuali punteggi delle 6 colonne verticale Scrivi "Totale Estrazioni esaminate " & f,1,2,4 Scrivi "Riepilogo Percentuali punteggi delle 6 colonne verticali",1 Scrivi "Col.Vert. -01- -02- -03- -04- -05- -06-" For i2 = 2 To 6 Scrivi i2 & ") Punti " & FormattaStringa(punteggio(1,i2),"0000") & " " & FormattaStringa(punteggio(2,i2),"0000") & " " & FormattaStringa(punteggio(3,i2),"0000") & " " & FormattaStringa(punteggio(4,i2),"0000") & " " & FormattaStringa(punteggio(5,i2),"0000") & " " & FormattaStringa(punteggio(6,i2),"0000") Next Scrivi Scrivi "Col.Vert. - % - - % - - % - - % - - % - - % -"
For i2 = 2 To 6 p1 = Round(punteggio(1,i2) / f,2) p2 = Round(punteggio(2,i2) / f,2) p3 = Round(punteggio(3,i2) / f,2) p4 = Round(punteggio(4,i2) / f,2) p5 = Round(punteggio(5,i2) / f,2) p6 = Round(punteggio(6,i2) / f,2) Scrivi i2 & ") Punti " & Round(p1,2) & " " & Round(p2,2) & " " & Round(p3,2) & " " & Round(p4,2) & " " & Round(p5,2) & " " & Round(p6,2) Next
End Sub Ti chiedo, e me ne scuso, se è possibile avere dal programma un listato dei punteggi ottenuti, al momento ho i primi 100 a partire dall'ultima estrazione di sabato 0 2 1 3 0 0 1 0 1 1 2 1 0 3 0 1 2 0 0 3 1 1 1 0 1 1 1 2 0 1 1 1 1 1 0 2 1 1 0 1 2 1 1 0 1 2 1 1 2 2 1 0 1 0 0 0 0 1 2 3 0 0 2 2 2 0 0 1 1 1 1 2 1 1 1 1 1 1 2 1 1 0 2 0 1 1 1 1 0 2 0 2 0 2 1 1 1 2 1 0 1 1 1 1 1 1 2 0 3 1 1 0 1 0 1 0 1 1 2 1 0 2 0 2 0 2 2 0 0 2 1 1 1 2 1 1 0 1 1 0 2 2 0 1 1 1 1 1 1 1 0 2 3 0 0 1 2 0 2 1 1 0 1 0 1 1 2 1 2 1 0 0 1 2 3 2 0 0 0 1 1 0 0 1 3 1 0 1 1 2 0 2 1 2 1 2 0 0 1 1 2 0 1 1 1 1 0 1 2 1 0 1 3 0 0 2 2 1 1 1 0 1 2 1 1 1 0 1 2 0 2 0 0 2 1 1 1 0 2 1 1 1 2 0 2 0 0 1 0 1 3 1 1 1 2 2 0 0 0 3 1 1 0 1 1 0 2 0 2 1 1 0 0 1 1 3 1 0 1 2 0 2 0 1 2 1 2 0 1 1 0 3 0 1 1 1 3 0 1 0 1 0 3 1 0 1 0 1 0 1 3 1 0 2 2 1 1 0 2 1 0 1 1 1 1 2 1 0 1 1 1 1 1 2 0 1 0 1 0 0 1 4 0 1 1 0 2 2 3 1 0 0 1 1 1 1 1 2 0 1 1 0 1 2 1 1 0 2 1 1 2 0 0 2 0 0 2 2 1 2 0 1 1 1 1 1 0 1 1 2 1 1 2 1 1 0 2 2 0 0 1 1 1 3 1 1 0 0 1 0 0 2 1 2 2 1 1 0 1 1 1 2 2 0 1 0 0 1 1 1 1 2 3 0 1 1 1 0 0 1 0 2 2 1 2 1 1 0 0 2 2 1 0 1 2 0 1 1 0 2 1 1 1 1 1 1 0 2 1 2 1 0 2 0 0 0 1 3 2 0 1 1 0 0 1 3 0 0 0 3 2 1 2 0 1 1 1 1 2 0 3 1 0 0 2 2 0 0 1 1 0 1 1 0 2 2 1 1 0 1 1 2 0 2 2 1 0 1 2 1 1 1 1 0 1 1 0 2 2 0 0 0 2 2 1 1 0 1 0 0 2 3 2 0 2 1 0 1 2 2 0 1 1 0 0 2 2 0 2 0 2 0 2 0 2 0 0 1 2 2 1 0 2 0 2 0 1 1 0 1 2 1 1 1 1 1 0 2 1 1
|