Option Explicit
Sub Main
'script By I Legend per lottoCed Utenti
'Controllare e segnalare eventuali Bugs
'Lo script non da previsioni
'Lo script potrebbe restituire Errori statistici
'controllare e verificare sempre.
Dim idEstr,Ini,Fin
Dim id_GTR,id_GVR
Ini = CInt(InputBox("SelezionaInizioRicerca","ConcorsoInizioRicerca",EstrazioneFin - 100))
Fin = EstrazioneFin
id_GTR = GetTipoRicerca
id_GVR = GetValoreRicerca(id_GTR)
Call GetIntestazione(Ini,Fin,id_GTR,id_GVR)
If id_GTR <= 6 Then
Call SommeDistanze(Ini,Fin,id_GTR,id_GVR)
ElseIf id_GTR >= 7 Then
Call SommeDistanzeIsotope(Ini,Fin,id_GTR,id_GVR)
End If
End Sub
Sub AlimentaTab(aRis,idCs,strData,strRu,strE1,strE2,E1,E2,E3,E4)
aRis(1) = idCs
aRis(2) = strData
aRis(3) = strRu
aRis(4) = strE1
aRis(5) = strE2
aRis(6) = E1
aRis(7) = E2
aRis(8) = E3
aRis(9) = E4
End Sub
Function GetIntestazione(Ini,Fin,id_GTR,id_Gvr)
Scrivi "Il GIOCO E' VIETATO AI MINORI DI ANNI 18,PUO' COMPORTARE GRAVE DIPENDENZA PATOLOGICA ",True,,vbRed
Scrivi "script By I Legend per lottoCed Utenti"
Scrivi "Ricerca Statistica : ",True,,RGB(152,231,254)
Scrivi "DataInizioRicerca : ",True,False
Scrivi DataEstrazione(Ini),,,,vbBlue
Scrivi "DataFineRicerca : ",True,False
Scrivi DataEstrazione(Fin),,,,vbBlue
Scrivi "Estrazioni Analizzate : ",True,False
Scrivi Fin - Ini,,,,vbBlue
Scrivi "TipoRicerca : ",True,False
Scrivi GetStrRicerca(id_GTR),,,,vbBlue
Scrivi "Valore di Ricerca : ",True,False
Scrivi id_Gvr,,,,vbBlue
Scrivi
End Function
Function GetTipoRicerca
Dim aRic,bRet
aRic = Array("","Som.Oriz","Som.Vert","Som.Diag",_
"Dist.Oriz","Dist.Vert","Dist.Diag",_
"Som.Oriz.Iso","Som.Vert.Iso","Som.Diag.Iso",_
"Dist.Oriz.Iso","Dist.Vert.Iso","Dist.Diag.Iso")
bRet = ScegliOpzioneMenu(aRic,1,"SelezionaTipoDiRicerca")
GetTipoRicerca = bRet
End Function
Function GetStrRicerca(id_gtr)
Dim aRic,bRet
aRic = Array("","Som.Oriz","Som.Vert","Som.Diag",_
"Dist.Oriz","Dist.Vert","Dist.Diag",_
"Som.Oriz.Iso","Som.Vert.Iso","Som.Diag.Iso",_
"Dist.Oriz.Iso","Dist.Vert.Iso","Dist.Diag.Iso")
bRet = aRic(id_gtr)
GetStrRicerca = bRet
End Function
Function GetValoreRicerca(id_Gtr)
Dim i,bRet
If id_Gtr <= 3 Or id_Gtr >= 7 And id_Gtr <= 9 Then
ReDim aNum(90)
Else
ReDim aNum(45)
End If
For i = 1 To UBound(aNum)
aNum(i) = i
Next
bRet = ScegliOpzioneMenu(aNum,1,"SelezionaValoreRicerca")
GetValoreRicerca = bRet
End Function
Function SommeDistanze(Ini,Fin,id_Gtr,id_Gvr)
Dim idestr,R1,R2,P1,P2,P3,P4,E1,E2,E3,E4,nCasi
Dim strRu,strE1,StrE2,strData
Dim aTitolo
aTitolo = Array("","nCs","Data_Condizione","Ruote","EstrattiR1","EstrattiR2","E1","E2","E3","E4")
Call InitTabella(aTitolo,RGB(152,231,254),,3,RGB(157,79,0))
nCasi = 0
For idestr = Ini To Fin
If ScriptInterrotto Then Exit For
Call Messaggio("Analisi Estrazione: " & GetInfoEstrazione(idestr))
Call AvanzamentoElab(Ini,Fin,idestr)
For R1 = 1 To 10
For R2 = R1 + 1 To 12
If R2 = 11 Then R2 = 12
For P1 = 1 To 4
For P2 = P1 + 1 To 5
For P3 = 1 To 4
For P4 = P3 + 1 To 5
E1 = Estratto(idestr,R1,P1)
E2 = Estratto(idestr,R1,P2)
E3 = Estratto(idestr,R2,P3)
E4 = Estratto(idestr,R2,P4)
If id_Gtr = 1 And Fuori90(E1 + E2) = id_Gvr And Fuori90(E3 + E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 2 And Fuori90(E1 + E3) = id_Gvr And Fuori90(E2 + E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 3 And Fuori90(E1 + E4) = id_Gvr And Fuori90(E2 + E3) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 4 And Distanza(E1,E2) = id_Gvr And Distanza(E3,E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 5 And Distanza(E1,E3) = id_Gvr And Distanza(E2,E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 6 And Distanza(E1,E4) = id_Gvr And Distanza(E2,E3) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
End If
Next
Next
Next
Next
Next
Next
Next
Call CreaTabella
Scrivi "Totale Casi Rintracciati: " & nCasi
End Function
Function SommeDistanzeIsotope(Ini,Fin,id_Gtr,id_Gvr)
Dim idestr,R1,R2,P1,P2,P3,P4,E1,E2,E3,E4,nCasi
Dim strRu,strE1,StrE2,strData
Dim aTitolo
aTitolo = Array("","nCs","Data_Condizione","Ruote","EstrattiR1","EstrattiR2","E1","E2","E3","E4")
Call InitTabella(aTitolo,RGB(152,231,254),,3,RGB(157,79,0))
nCasi = 0
For idestr = Ini To Fin
If ScriptInterrotto Then Exit For
Call Messaggio("Analisi Estrazione: " & GetInfoEstrazione(idestr))
Call AvanzamentoElab(Ini,Fin,idestr)
For R1 = 1 To 10
For R2 = R1 + 1 To 12
If R2 = 11 Then R2 = 12
For P1 = 1 To 4
For P2 = P1 + 1 To 5
E1 = Estratto(idestr,R1,P1)
E2 = Estratto(idestr,R1,P2)
E3 = Estratto(idestr,R2,P1)
E4 = Estratto(idestr,R2,P2)
If id_Gtr = 7 And Fuori90(E1 + E2) = id_Gvr And Fuori90(E3 + E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 8 And Fuori90(E1 + E3) = id_Gvr And Fuori90(E2 + E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 9 And Fuori90(E1 + E4) = id_Gvr And Fuori90(E2 + E3) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 10 And Distanza(E1,E2) = id_Gvr And Distanza(E3,E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 11 And Distanza(E1,E3) = id_Gvr And Distanza(E2,E4) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
ElseIf id_Gtr = 12 And Distanza(E1,E4) = id_Gvr And Distanza(E2,E3) = id_Gvr Then
nCasi = nCasi + 1
strData = GetInfoEstrazione(idestr)
strRu = SiglaRuota(R1) & "-" & SiglaRuota(R2)
strE1 = StringaEstratti(idestr,R1)
StrE2 = StringaEstratti(idestr,R2)
ReDim aRis(9)
Call AlimentaTab(aRis,nCasi,strData,strRu,strE1,StrE2,E1,E2,E3,E4)
Call AddRigaTabella(aRis)
End If
Next
Next
Next
Next
Next
Call CreaTabella
Scrivi "Totale Casi Rintracciati: " & nCasi
End Function