Option Explicit
Sub Main
Dim rie(90,15),an(1)
Dim n,fine,r,e,t,ix,v,det,iy,w,z,Ini,vv,zz,we,key1,key2,ele,y,iz,aretritardi,aretidestr,limusc,nusc,Totrit,yy,retesito,retestratti,retidestr,da,elesom,f,k
Dim e1,e2,e3,e4,e5,e6,e8
f = EstrazioniArchivioSE
fine = InputBox("Estrazione n.",,f)
det = InputBox("Dettaglio Graduatorie",,"NO")
''''''crea tabella combinazione con doppia sincronia e sincro-isocronia
Dim atitolo(17),aris(17)
'''''''''''''''''''''''''''''''''''''''''''''''''e x p o r t e x c e l ''''''''''''''''''''''''''''''''''''''''''''''
'''''' tabella in output è possibile esportarla in excel cliccando l'icona del programma FOGLIO ELETTRONICO
'''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''
atitolo(1) = " ID "
atitolo(2) = " SuperE."
atitolo(3) = " Nr. "
atitolo(4) = " RaE "
atitolo(5) = " Gr.1 "
atitolo(6) = " Fre "
atitolo(7) = " Gr.2 "
atitolo(8) = " IdR+IdF "
atitolo(9) = " "
atitolo(10) = " Tot.Rit"
atitolo(11) = " key1 "
atitolo(12) = " key2 "
atitolo(13) = " key3 "
atitolo(14) = "Star"
SetTableWidth("85%px")
Call InitTabella(atitolo,2,"left",1.5,5,"Cambria")
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''''''''
ReDim aNum(90),stella(90,2),afre(90)
For k = 1 To fine
''' calcola RitardoCombinazione
For n = 1 To 90
aNum(n) = aNum(n) + 1
stella(n,1) = stella(n,1) + 1
stella(n,2) = Format2(n)
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),1) = 0
''''''frequenza
afre(EstrattoSE(k,1)) = afre(EstrattoSE(k,1)) + 1
afre(EstrattoSE(k,2)) = afre(EstrattoSE(k,2)) + 1
afre(EstrattoSE(k,3)) = afre(EstrattoSE(k,3)) + 1
afre(EstrattoSE(k,4)) = afre(EstrattoSE(k,4)) + 1
afre(EstrattoSE(k,5)) = afre(EstrattoSE(k,5)) + 1
afre(EstrattoSE(k,6)) = afre(EstrattoSE(k,6)) + 1
'''''''''''''''''
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''''''''
''''''''''ritardo''''
For n = 1 To 90
iy = iy + 1
rie(iy,2) = Format2(n)
rie(iy,3) = aNum(n)
rie(iy,4) = afre(n)
rie(iy,5) = 0
rie(iy,6) = 0
rie(iy,7) = 0
rie(iy,8) = 0
rie(iy,9) = 0
key1 = FormattaStringa(rie(iy,3),"000") & FormattaStringa(rie(iy,4),"000")
key2 = FormattaStringa(rie(iy,4),"000") & FormattaStringa(rie(iy,3),"000")
rie(iy,13) = key1
rie(iy,14) = key2
rie(iy,15) = 0
Next
''''graduatoria ritardo
Call OrdinaMatrice(rie,- 1,3)
we = 0
If det <> "NO" Then
Scrivi " SuperEnalotto ",1
Scrivi " E L E N C O X R I T A R D O ",1
Scrivi "ID Nr Rit Fre ",1
End If
For e = 1 To 90
If rie(e,2) > 0 Then
we = we + 1
rie(e,5) = we
rie(e,6) = 0
rie(e,7) = 0
rie(iy,8) = 0
If det <> "NO" Then Scrivi Format2(we) & "....." & rie(e,2) & "..." & FormattaStringa(rie(e,3),"000") & "..." & rie(e,4) & "....G1.." & rie(e,5)
End If
Next
''''graduatoria frequenza
Call OrdinaMatrice(rie,1,4)
we = 0
If det <> "NO" Then
Scrivi " SuperEnalotto",1
Scrivi " E L E N C O X f r e q u e n z a ",1
Scrivi "ID Nr Rit Fre ",1
End If
For e = 1 To 90
If rie(e,2) <> "" Then
If rie(e,4) > 0 Then
we = we + 1
rie(e,7) = we
rie(e,8) = FormattaStringa(rie(e,7) + rie(e,5),"0000")
If det <> "NO" Then Scrivi Format2(we) & "....." & rie(e,2) & "..." & FormattaStringa(rie(e,3),"000") & "..." & rie(e,4) & "....G2..." & rie(e,7)
End If
End If
Next
' ''''' graduatoria di somma
ColoreTesto(1)
Scrivi " Graduatoria Per Somma Pos.Ritardo e Frequenza....all'estrazione n." & fine & "/" & DataEstrazioneSE(fine),1
Scrivi " SuperEnalotto",1
ColoreTesto(0)
Call OrdinaMatrice(rie,1,8)
elesom = ""
For t = 1 To 90
'''''''''''''''''''''''''''''''''''''''''''''''
v = v + 1
If det <> "NO" Then Scrivi "Grad.pos.." & FormattaStringa(v,"000") & " comb.Nr.." & rie(t,2) & " Rae..." & FormattaStringa(rie(t,3),"000") & " Freq..." & FormattaStringa(rie(t,4),"0000") & " Somma.." & FormattaStringa(rie(t,8),"0000") & " = " & Format2(rie(t,5)) & " // " & Format2(rie(t,7))
'''''''''''''''''scrivi tabella'''''''''''''''''''''''''''''''''''''''''
aris(1) = FormattaStringa(v,"00")
aris(2) = "Super"
aris(3) = rie(t,2)
aris(4) = rie(t,3)
aris(5) = rie(t,5)
aris(6) = rie(t,4)
aris(7) = rie(t,7)
aris(8) = rie(t,8)
aris(9) = rie(t,15)
aris(11) = rie(t,13)
aris(12) = rie(t,14)
aris(13) = FormattaStringa(rie(t,7),"0000") & "//" & rie(t,14)
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
'''calcolo totale ritardo ult.10 ritardi (9PREC+ATTUALE)
an(1) = rie(t,2)
Call ElencoRitardiSE(an,1,1,fine,aretritardi,aretidestr)
limusc = UBound(aretritardi)
If limusc > 0 And limusc > 10 Then
nusc = limusc - 10 : Totrit = 0
For nusc = nusc + 1 To limusc - 1
Totrit = Totrit + aretritardi(nusc)
Next
aris(10) = Totrit + rie(t,3)
If aris(10) <= 100 Or aris(10) >= 360 Then
elesom = elesom & Format2(aris(3)) & "."
End If
Else
aris(10) = 0
End If
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
aris(14) = stella(rie(t,2),1)
Call AddRigaTabella(aris,,,1)
Call SetColoreCella(3,RGB(155,255,155),vbBlack)
Call SetColoreCella(8,RGB(255,255,202),vbBlack)
Next
''''''''''''''''''''''''''''''''''''''''' g r a d u a t o r i e i 7 migliori
ColoreTesto(2)
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
''''''''''calcola 7 SUperStar o Stella in Ritardo
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(stella,-1,1)
For z = 1 To 7
ele = ele & Format2(stella(z,2)) & "."
Next
Scrivi "-7 SuperStar in Ritardo............." & ele,1
''''''''''''''''''''''''''''''''''''''''' g r a d u a t o r i e i 7 migliori
ColoreTesto(2)
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
''''''''''''''calcola 7 migliori
'''''idr+idf
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(rie,1,8)
For z = 1 To 7
ele = ele & Format2(rie(z,2)) & "."
yy = yy + 1
nr(yy) = Format2(rie(z,2))
Next
Scrivi "-7 Migliori IdR+IdF...Capogioco....." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
'''''Ritardo
ColoreTesto(2)
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(rie,- 1,3)
For z = 1 To 7
ele = ele & Format2(rie(z,2)) & "."
yy = yy + 1
nr(yy) = Format2(rie(z,2))
Next
Scrivi "-7 Più in Ritardo..................." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
'''''Sotto Frequenti
ColoreTesto(2)
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(rie,1,4)
For z = 1 To 7
ele = ele & Format2(rie(z,2)) & "."
yy = yy + 1
nr(yy) = Format2(rie(z,2))
Next
Scrivi "-7 Sotto Frequenti ................." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
''''' + Frequenti
ColoreTesto(2)
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(rie,- 1,4)
For z = 1 To 7
ele = ele & Format2(rie(z,2)) & "."
yy = yy + 1
nr(yy) = Format2(rie(z,2))
Next
Scrivi "-7 Più Frequenti ..................." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
ColoreTesto(2)
'''''''''''''''''radicali
ReDim nm(32,2)
iz = 0
For z = 1 To 90
For y = 1 To 8
If Radicale(Int(rie(z,2))) = y Then
iz = iz + 1
nm(iz,1) = rie(z,2)
nm(iz,2) = rie(z,3)
End If
Next
Next
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(nm,- 1,2)
For z = 1 To 7
ele = ele & Format2(nm(z,1)) & "."
yy = yy + 1
nr(yy) = Format2(nm(z,1))
Next
Scrivi "-7 Radicali più in Ritardo.........." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
'''''''''''''''''Gemelli
ColoreTesto(2)
ReDim nm(90,2)
iz = 0
For z = 1 To 90
If Gemello(rie(z,2)) = True Then
iz = iz + 1
nm(iz,1) = rie(z,2)
nm(iz,2) = rie(z,3)
End If
Next
ele = "" : yy = 0
ReDim nr(7)
Call OrdinaMatrice(nm,- 1,2)
For z = 1 To 7
ele = ele & Format2(nm(z,1)) & "."
yy = yy + 1
nr(yy) = Format2(nm(z,1))
Next
Scrivi "-7 Gemelli più in Ritardo..........." & ele,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
'''''''''''''''''Tot.SOmma ritardi (9+1)
ColoreTesto(2)
Call OrdinaMatrice(nm,- 1,2)
Dim qtsr
ReDim nr(35)
Call SplitByChar(elesom,".",nr)
qtsr = UBound(nr)
Scrivi "- Nr.in Evidenza x Somma Ritardi <100 >360........." & elesom,1
'''''''''verifica risultati
ColoreTesto(0)
da = fine
For da = da + 1 To fine + 13
Call VerificaEsitoSE(nr,da,1,1,retesito,,retestratti,retidestr)
If retestratti <> "" Then
Scrivi " ------> " & retidestr & "...al colpo n.." & Format2(retidestr - fine) & ".....Estratti..." & retestratti,1
End If
Next
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''
Call CreaTabellaOrdinabile(8,1,1)
End Sub