Option Explicit
'Script x GiorgioAntonio su lottoCed
'Versione 10
'Controllare eventuali bugs
'non si garantisce la correttezza dei risultati verificare output
'Lo script restituisce Le combinazioni richieste
'quartine consecutive
'quartine step
'cinquine
'ottine continue
'ottine step
'decine
'restituisce l'esito di ogni formazione
'non restituisce nessuna statistica
Sub Main
Dim aNum(20)
Dim tipoArch
Dim idEstr,Ini,Fin
Dim idEsito,idColpi,qEstr,idTabella,aTitoli
Dim sommaPunti
Dim InitStart,StopEnd
If ImpostaParametri(tipoArch,qEstr,idTabella,idEsito,idColpi) = False Then
MsgBox"i parametri Inseriti non sono corretti"
Exit Sub
End If
Ini = EstrazioniArchivioDL -(qEstr - 1) 'EstrazioniArchivioDL '->Valutare quale funzione è meglio usare
Fin = EstrazioniArchivioDL
Call GetTabella(idTabella,aTitoli)
Call InitTabella(aTitoli,1,,3,5)
InitStart = Timer
For idEstr = Ini To Fin
Messaggio "Elaborazione Concorso num : " & idEstr
AvanzamentoElab Ini,Fin,idEstr
If ScriptInterrotto Then Exit For
Call CaricaArray(aNum,idEstr) 'carico tutti gli estratti trasformati in un array
Select Case idTabella
Case 1
Call GetQuartinaCons(idEstr,idEsito,idColpi,aNum)
Case 2
Call GetQuartinaStep(idEstr,idEsito,idColpi,aNum)
Case 3
Call GetCinquina(idEstr,idEsito,idColpi,aNum)
Case 4
Call GetOttinaContinua(idEstr,idEsito,idColpi,aNum)
Case 5
Call GetOttinaStep(idEstr,idEsito,idColpi,aNum)
ReDim aRis(22)
Case 6
Call GetDecina(idEstr,idEsito,idColpi,aNum)
End Select
Next
StopEnd = Timer
Call Scrivi("Tempo di elaborazione : " & FormattaSecondi((StopEnd + 01) - InitStart))
Call SetTableWidth("100%")
Call Scrivi("DataInizio " & DataEstrazione(Ini))
Call Scrivi("quante estrazioni " & qEstr)
Call Scrivi("quanti colpi " & idColpi)
Call Scrivi("esito >= " & idEsito)
CreaTabellaOrdinabile
End Sub
Function ImpostaParametri(TipoArch,qEstr,idTabella,idEsito,idColpi)
Dim bRet
TipoArch = ScegliArchivio
If TipoArch >= 0 Then
Call ImpostaArchivio10ELotto(TipoArch)
qEstr = CInt(InputBox("Inserisci quante estrazioni di verifica vuoi analizzare","Etrazioni di Verifica",1))
If qEstr > 0 Then
idTabella = ScegliTabella
If idTabella > 0 Then
idEsito = SelEsito(idTabella)
If idEsito > 0 Then
'per un corretto calcolo dei punteggi sarebbe meglio che i colpi di gioco siano 1 per non avere
' risultati falsati a seconda delle estrazioni
idColpi = CInt(InputBox("Inserisci quanti colpi di verifica vuoi analizzare","Colpi di Verifica",1))
If idColpi > 0 Then
bRet = True
End If
End If
End If
End If
End If
ImpostaParametri = bRet
End Function
Sub alimentaArrayTab(aris,idestr,sNum1,aretesito1,snum2,aretesito2,sNum3,aretesito3,sNum4,aretesito4,sNum5,aRetEsito5,sommaPunti)
aris(1) = GetInfoEstrazione(idestr)
aris(2) = sNum1
aris(3) = aretesito1
aris(4) = snum2
aris(5) = aretesito2
aris(6) = sNum3
aris(7) = aretesito3
aris(8) = sNum4
aris(9) = aretesito4
aris(10) = sNum5
aris(11) = aRetEsito5
aris(12) = sommaPunti
End Sub
Sub alimentaArrayTabCinq(aris,idestr,sNum1,aretesito1,snum2,aretesito2,sNum3,aretesito3,sNum4,aretesito4,sommaPunti)
aris(1) = GetInfoEstrazione(idestr)
aris(2) = sNum1
aris(3) = aretesito1
aris(4) = snum2
aris(5) = aretesito2
aris(6) = sNum3
aris(7) = aretesito3
aris(8) = sNum4
aris(9) = aretesito4
aris(10) = sommaPunti
End Sub
Sub alimentaArrayTabOttina(aris,idestr,sNum1,aretesito1,snum2,aretesito2,sNum3,aretesito3,sNum4,aretesito4,sNum5,aRetEsito5,sNum6,aretesito6,snum7,aretesito7,sNum8,aretesito8,sNum9,aretesito9,sNum10,aretesito10,sommaPunti)
aris(1) = GetInfoEstrazione(idestr)
aris(2) = sNum1
aris(3) = aretesito1
aris(4) = snum2
aris(5) = aretesito2
aris(6) = sNum3
aris(7) = aretesito3
aris(8) = sNum4
aris(9) = aretesito4
aris(10) = sNum5
aris(11) = aRetEsito5
aris(12) = sNum6
aris(13) = aretesito6
aris(14) = snum7
aris(15) = aretesito7
aris(16) = sNum8
aris(17) = aretesito8
aris(18) = sNum9
aris(19) = aretesito9
aris(20) = sNum10
aris(21) = aretesito10
aris(22) = sommaPunti
End Sub
Sub alimentaArrayTabDecina(aris,idestr,sNum1,aretesito1,snum2,aretesito2,sNum3,aretesito3,sNum4,aretesito4,sNum5,aRetEsito5,sNum6,aRetEsito6,sommaPunti)
aris(1) = GetInfoEstrazione(idestr)
aris(2) = sNum1
aris(3) = aretesito1
aris(4) = snum2
aris(5) = aretesito2
aris(6) = sNum3
aris(7) = aretesito3
aris(8) = sNum4
aris(9) = aretesito4
aris(10) = sNum5
aris(11) = aRetEsito5
aris(12) = sNum6
aris(13) = aRetEsito6
aris(14) = sommaPunti
End Sub
Function SelEsito(idTab)
Dim ret
Dim aVoci
Dim Prompt,Punti
aVoci = Array("","Estratti","Ambi","Terzine","Quartine","Cinquine","Sestine","Settine","Ottine","Novine","Decine")
Select Case idTab
Case 1
Prompt = "Quaterna"
Punti = 4
Case 2
Prompt = "Quaterna"
Punti = 4
Case 3
Prompt = "Cinquina"
Punti = 5
Case 4
Prompt = "Otto"
Punti = 8
Case 5
Prompt = "Otto"
Punti = 8
Case 6
Prompt = "Dieci"
Punti = 10
End Select
ret = ScegliOpzioneMenu(aVoci,1," Analesi Sorte<= : " & Prompt)
Do Until ret <= Punti
ret = ScegliOpzioneMenu(aVoci,1," Analesi Sorte<= : " & Prompt)
Loop
SelEsito = ret
End Function
Function GetPunti(retEsito)
Dim punti
If retEsito = "" Then
punti = 0
ElseIf retEsito = "Estratto" Then
punti = 1
ElseIf retEsito = "Ambo" Then
punti = 2
ElseIf retEsito = "Terno" Then
punti = 3
ElseIf retEsito = "Quaterna" Then
punti = 4
ElseIf retEsito = "Cinquina" Then
punti = 5
ElseIf retEsito = "Sestina" Then
punti = 6
ElseIf retEsito = "Sette" Then
punti = 7
ElseIf retEsito = "Otto" Then
punti = 8
ElseIf retEsito = "Nove" Then
punti = 9
ElseIf retEsito = "Dieci" Then
punti = 10
End If
GetPunti = punti
End Function
Function CaricaArray(aNum,idestr)
Dim K
For K = 1 To UBound(aNum)
aNum(K) = Fuori90(((EstrattoDL(idestr,K) + 67)*14) + 32)
Next
End Function
Function ScegliArchivio()
ReDim aVoci(1)
aVoci(0) = "10 e lotto Serale"
aVoci(1) = "10 e lotto 5 min"
ScegliArchivio = ScegliOpzioneMenu(aVoci,0,"Secegli archivio") + 1
End Function
Function ScegliTabella
Dim bRet
Dim aTab
aTab = Array("","sviluppo quartine Cons","sviluppo quartine Step","sviluppo cinquine","sviluppo ottine Cons","sviluppo ottine step","sviluppo decine")
bRet = ScegliOpzioneMenu(aTab,1,"Seleziona Sviluppo Statistica")
ScegliTabella = bRet
End Function
Sub GetTabella(idTabella,aTitoli)
Select Case idTabella
Case 1
aTitoli = Array("","DATA ESTR."," quartina(1,2,3,4) ","ESITO"," quartina(5,6,7,8) ","ESITO"," quartina(9,10,11,12) ","ESITO",_
" quartina(13,14,15,16) ","ESITO"," quartina(17,18,19,20) ","ESITO","TOT.PUNTI")',"STRINGA ESITO")
Case 2
aTitoli = Array("","DATA ESTR."," quartina(1,6,11,16) ","ESITO"," quartina(2,7,12,17) ","ESITO"," quartina(3,8,13,18) ","ESITO",_
" quartina(4,9,14,19) ","ESITO"," quartina(5,10,15,20) ","ESITO","TOT.PUNTI")',"STRINGA ESITO")
Case 3
aTitoli = Array("","DATA ESTR."," Cinquina(1,5) ","ESITO"," Cinquina(6,10) ","ESITO"," Cinquina(11,15) ","ESITO",_
" Cinquina(16,20) ","ESITO","TOT.PUNTI")',"STRINGA ESITO")
Case 4
aTitoli = Array("","DATA ESTR."," Ottina(1,2,3,4,5,6,7,8) ","ESITO"," Ottina(1,2,3,4,9,10,11,12) ","ESITO","Ottina(1,2,3,4,13,14,15,16) ","ESITO",_
"Ottina(1,2,3,4,17,18,19,20) ","ESITO","Ottina(5,6,7,8,9,10,11,12) ","ESITO","Ottina(5,6,7,8,13,14,15,16) ","ESITO","Ottina(5,6,7,8,17,18,19,20) ","ESITO",_
"Ottina(9,10,11,12,13,14,15,16) ","ESITO","Ottina(9,10,11,12,17,18,19,20) ","ESITO","Ottina(13,14,15,16,17,18,19,20) ","ESITO","TOT.PUNTI")
Case 5
aTitoli = Array("","DATA ESTR."," Ottina(1,6,11,16,2,7,12,17) ","ESITO"," Ottina(1,6,11,16,3,8,13,18) ","ESITO","Ottina(1,6,11,16,4,9,14,19) ","ESITO",_
"Ottina(1,6,11,16,5,10,15,20) ","ESITO","Ottina(2,7,12,17,3,8,13,18) ","ESITO","Ottina(2,7,12,17,4,9,14,19) ","ESITO","Ottina(2,7,12,17,5,10,15,20) ","ESITO",_
"Ottina(3,8,13,18,4,9,14,19) ","ESITO","Ottina(3,8,13,18,5,10,15,20) ","ESITO","Ottina(4,9,14,19,5,10,15,20) ","ESITO","TOT.PUNTI")',"STRINGA ESITO")
Case 6
aTitoli = Array("","DATA ESTR."," Decina(1_5,6_10) ","ESITO"," Decina(1_5,11_15) ","ESITO"," Decina(1_5,16_20) ","ESITO",_
"Decina(6_10,11_15)","ESITO","Decina(6_10,16_20)","ESITO","Decina(11_15,16_20)","ESITO","TOT.PUNTI")
End Select
End Sub
Sub GetQuartinaCons(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0),aNum5(0)
Dim sNum1,sNum2,sNum3,sNum4,sNum5
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4,aRetEsito5
Dim SommaPunti
Call caricaArrayComposto(aNum,1,4,0,0,aNum1,sNum1)
Call caricaArrayComposto(aNum,5,8,0,0,aNum2,sNum2)
Call caricaArrayComposto(aNum,9,12,0,0,aNum3,sNum3)
Call caricaArrayComposto(aNum,13,16,0,0,aNum4,sNum4)
Call caricaArrayComposto(aNum,17,20,0,0,aNum5,sNum5)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
Call VerificaEsitoDL(aNum5,idEstr + 1,idEsito,idColpi,aRetEsito5)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4) + GetPunti(aRetEsito5)' sommo i punti di ogni singolo array
ReDim aRis(12)
Call alimentaArrayTab(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,sNum5,aRetEsito5,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Sub GetQuartinaStep(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0),aNum5(0)
Dim sNum1,sNum2,sNum3,sNum4,sNum5
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4,aRetEsito5
Dim SommaPunti
Call caricaArrayCompostoStep(aNum,1,0,aNum1,sNum1)
Call caricaArrayCompostoStep(aNum,2,0,aNum2,sNum2)
Call caricaArrayCompostoStep(aNum,3,0,aNum3,sNum3)
Call caricaArrayCompostoStep(aNum,4,0,aNum4,sNum4)
Call caricaArrayCompostoStep(aNum,5,0,aNum5,sNum5)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
Call VerificaEsitoDL(aNum5,idEstr + 1,idEsito,idColpi,aRetEsito5)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4) + GetPunti(aRetEsito5)' sommo i punti di ogni singolo array
ReDim aRis(12)
Call alimentaArrayTab(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,sNum5,aRetEsito5,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Sub GetCinquina(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0)
Dim sNum1,sNum2,sNum3,sNum4
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4
Dim SommaPunti
Call caricaArrayComposto(aNum,1,5,0,0,aNum1,sNum1) 'carico gli elementi trasformati in ogni singolo array in base agli indici inferiore e superiore
Call caricaArrayComposto(aNum,6,10,0,0,aNum2,sNum2)
Call caricaArrayComposto(aNum,11,15,0,0,aNum3,sNum3)
Call caricaArrayComposto(aNum,16,20,0,0,aNum4,sNum4)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4)' sommo i punti di ogni singolo array
ReDim aRis(10)
Call alimentaArrayTabCinq(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Sub GetOttinaContinua(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0),aNum5(0)
ReDim aNum6(0),aNum7(0),aNum8(0),aNum9(0),aNum10(0)
Dim sNum1,sNum2,sNum3,sNum4,sNum5
Dim sNum6,sNum7,sNum8,sNum9,sNum10
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4,aRetEsito5
Dim aRetEsito6,aRetEsito7,aRetEsito8,aRetEsito9,aRetEsito10
Dim SommaPunti
Call caricaArrayComposto(aNum,1,4,5,8,aNum1,sNum1)
Call caricaArrayComposto(aNum,1,4,9,12,aNum2,sNum2)
Call caricaArrayComposto(aNum,1,4,13,16,aNum3,sNum3)
Call caricaArrayComposto(aNum,1,4,17,20,aNum4,sNum4)
Call caricaArrayComposto(aNum,5,8,9,12,aNum5,sNum5)
Call caricaArrayComposto(aNum,5,8,13,16,aNum6,sNum6)
Call caricaArrayComposto(aNum,5,8,17,20,aNum7,sNum7)
Call caricaArrayComposto(aNum,9,12,13,16,aNum8,sNum8)
Call caricaArrayComposto(aNum,9,12,17,20,aNum9,sNum9)
Call caricaArrayComposto(aNum,13,16,17,20,aNum10,sNum10)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
Call VerificaEsitoDL(aNum5,idEstr + 1,idEsito,idColpi,aRetEsito5)
Call VerificaEsitoDL(aNum6,idEstr + 1,idEsito,idColpi,aRetEsito6)
Call VerificaEsitoDL(aNum7,idEstr + 1,idEsito,idColpi,aRetEsito7)
Call VerificaEsitoDL(aNum8,idEstr + 1,idEsito,idColpi,aRetEsito8)
Call VerificaEsitoDL(aNum9,idEstr + 1,idEsito,idColpi,aRetEsito9)
Call VerificaEsitoDL(aNum10,idEstr + 1,idEsito,idColpi,aRetEsito10)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4) + GetPunti(aRetEsito5) + GetPunti(aRetEsito6) + GetPunti(aRetEsito7) + GetPunti(aRetEsito8) + GetPunti(aRetEsito9) + GetPunti(aRetEsito10)
ReDim aRis(22)
Call alimentaArrayTabOttina(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,sNum5,aRetEsito5,sNum6,aRetEsito6,sNum7,aRetEsito7,sNum8,aRetEsito8,sNum9,aRetEsito9,sNum10,aRetEsito10,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Sub GetOttinaStep(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0),aNum5(0)
ReDim aNum6(0),aNum7(0),aNum8(0),aNum9(0),aNum10(0)
Dim sNum1,sNum2,sNum3,sNum4,sNum5
Dim sNum6,sNum7,sNum8,sNum9,sNum10
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4,aRetEsito5
Dim aRetEsito6,aRetEsito7,aRetEsito8,aRetEsito9,aRetEsito10
Dim SommaPunti
Call caricaArrayCompostoStep(aNum,1,2,aNum1,sNum1)
Call caricaArrayCompostoStep(aNum,1,3,aNum2,sNum2)
Call caricaArrayCompostoStep(aNum,1,4,aNum3,sNum3)
Call caricaArrayCompostoStep(aNum,1,5,aNum4,sNum4)
Call caricaArrayCompostoStep(aNum,2,3,aNum5,sNum5)
Call caricaArrayCompostoStep(aNum,2,4,aNum6,sNum6)
Call caricaArrayCompostoStep(aNum,2,5,aNum7,sNum7)
Call caricaArrayCompostoStep(aNum,3,4,aNum8,sNum8)
Call caricaArrayCompostoStep(aNum,3,5,aNum9,sNum9)
Call caricaArrayCompostoStep(aNum,4,5,aNum10,sNum10)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
Call VerificaEsitoDL(aNum5,idEstr + 1,idEsito,idColpi,aRetEsito5)
Call VerificaEsitoDL(aNum6,idEstr + 1,idEsito,idColpi,aRetEsito6)
Call VerificaEsitoDL(aNum7,idEstr + 1,idEsito,idColpi,aRetEsito7)
Call VerificaEsitoDL(aNum8,idEstr + 1,idEsito,idColpi,aRetEsito8)
Call VerificaEsitoDL(aNum9,idEstr + 1,idEsito,idColpi,aRetEsito9)
Call VerificaEsitoDL(aNum10,idEstr + 1,idEsito,idColpi,aRetEsito10)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4) + GetPunti(aRetEsito5) + GetPunti(aRetEsito6) + GetPunti(aRetEsito7) + GetPunti(aRetEsito8) + GetPunti(aRetEsito9) + GetPunti(aRetEsito10)
ReDim aRis(22)
Call alimentaArrayTabOttina(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,sNum5,aRetEsito5,sNum6,aRetEsito6,sNum7,aRetEsito7,sNum8,aRetEsito8,sNum9,aRetEsito9,sNum10,aRetEsito10,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Sub GetDecina(idEstr,idEsito,idColpi,aNum)'
ReDim aNum1(0),aNum2(0),aNum3(0),aNum4(0),aNum5(0)
ReDim aNum6(0)
Dim sNum1,sNum2,sNum3,sNum4,sNum5
Dim sNum6
Dim aRetEsito1,aRetEsito2,aRetEsito3,aRetEsito4,aRetEsito5
Dim aRetEsito6
Dim SommaPunti
Call caricaArrayComposto(aNum,1,5,6,10,aNum1,sNum1)
Call caricaArrayComposto(aNum,1,5,11,15,aNum2,sNum2)
Call caricaArrayComposto(aNum,1,5,16,20,aNum3,sNum3)
Call caricaArrayComposto(aNum,6,10,11,15,aNum4,sNum4)
Call caricaArrayComposto(aNum,6,10,16,20,aNum5,sNum5)
Call caricaArrayComposto(aNum,11,15,16,20,aNum6,sNum6)
Call VerificaEsitoDL(aNum1,idEstr + 1,idEsito,idColpi,aRetEsito1)
Call VerificaEsitoDL(aNum2,idEstr + 1,idEsito,idColpi,aRetEsito2)
Call VerificaEsitoDL(aNum3,idEstr + 1,idEsito,idColpi,aRetEsito3)
Call VerificaEsitoDL(aNum4,idEstr + 1,idEsito,idColpi,aRetEsito4)
Call VerificaEsitoDL(aNum5,idEstr + 1,idEsito,idColpi,aRetEsito5)
Call VerificaEsitoDL(aNum6,idEstr + 1,idEsito,idColpi,aRetEsito6)
SommaPunti = GetPunti(aRetEsito1) + GetPunti(aRetEsito2) + GetPunti(aRetEsito3) + GetPunti(aRetEsito4) + GetPunti(aRetEsito5) + GetPunti(aRetEsito6)
ReDim aRis(14)
Call alimentaArrayTabDecina(aRis,idEstr,sNum1,aRetEsito1,sNum2,aRetEsito2,sNum3,aRetEsito3,sNum4,aRetEsito4,sNum5,aRetEsito5,sNum6,aRetEsito6,SommaPunti)
Call AddRigaTabella(aRis)
End Sub
Function FormattaSecondi(s)
'Questa Function trasforma il numero di secondi passato come parametro in una stringa
' passando i secondi si ottengono ore minuti e secondi in formato hh:mm:ss
' s ---> Numero di secondi da formattare
' ritorna una stringa il cui formato è hh:mm:ss (la function non funziona se in totale abbiamo piu di 99 ore )
Dim hh
Dim Mm
Dim Ss
Dim TimeStr
hh = s \ 3600
Mm =(s Mod 3600) \ 60
Ss = s -((hh * 3600) +(Mm * 60))
TimeStr = Format2(hh) & ":" & Format2(Mm) & ":" & Format2(Ss)
FormattaSecondi = TimeStr
End Function
Sub caricaArrayComposto(aNum,idLb1,idUb1,idLb2,idUb2,aNum1,sNum1)
'aNum=Matrice base
'idLb1=indice minore primo array
'idUb1=indice maggiore primo array
'idLb2=indice minore secondo array
'idUb2=indice maggiore secondo array
'aNum1=Matrice di ritorno
ReDim aNum1(0)
Dim sNum1_,sNum2_
Dim K,J,m,c
m = 0
For K = idLb1 To idUb1
m = m + 1
ReDim Preserve aNum1(m)
aNum1(m) = aNum(K)
Next
c = m
If idLb2 <> 0 And idUb2 <> 0 Then
For J = idLb2 To idUb2
c = c + 1
ReDim Preserve aNum1(c)
aNum1(c) = aNum(J)
Next
End If
Call EliminaRipetuti(aNum1)
sNum1 = StringaNumeri(aNum1,,True)
End Sub
Sub caricaArrayCompostoStep(aNum,idLb1,idLb2,aNum1,sNum1)
'aNum=Matrice base
'idLb1=indice minore primo array
'idLb2=indice minore secondo array
'aNum1=Matrice di ritorno
ReDim aNum1(0)
Dim sNum1_,sNum2_
Dim K,J,m
m = 0
For K = idLb1 To UBound(aNum) Step 5
m = m + 1
ReDim Preserve aNum1(m)
aNum1(m) = aNum(K)
Next
m = 4
If idLb2 <> 0 Then
For J = idLb2 To UBound(aNum) Step 5
m = m + 1
ReDim Preserve aNum1(m)
aNum1(m) = aNum(J)
Next
End If
Call EliminaRipetuti(aNum1)
sNum1 = StringaNumeri(aNum1,,True)
End Sub