Sub Main
Dim sDirDestinazione
Dim idEstr
Dim CG ' capogioco
Dim R ' ruota
Dim Apertura,Chiusura,Max,Min,DataEst
Dim sRecord
Dim sFile
Dim sRuota
Dim EstrPartenza
Dim EstrazioniTot
Dim PrimaEstrazioneDellaStatistica
Dim n1,n2
sDirDestinazione = "G:\Superenalotto\" ' ScegliDirectory
EstrazioniTot = EstrazioniArchivioSE
PrimaEstrazioneDellaStatistica = 1600 ' estrazione del 06/01/1900 la statistica parte dalla prima estrazione del 1900
' modificare questo valore se si vuole far partire la statistica da una posizione diversa
' lo script legge i file output se essi sono presenti
' ed esegue la statistica a partire dall'ultima estrazione non presente fino all'ultima disponibile in archivio
' in pratica devi solo lanciare lo script,dopo la prima volta che gira le altre volte
' l'esecuzione sara velocissima perche calcolera solo i valori relativi alle ultime estrazioni
If sDirDestinazione <> "" Then
'If CreaDirectoryRuote(sDirDestinazione) Then
'ReDim aRuote(10)
'For R = 1 To 10
'aRuote(1) = 1
'Next ' For R = 1 To 10...
sRuota = "Super"
For n1 = 1 To 90
'For n2 = n1 + 1 To 90
EstrPartenza = PrimaEstrazioneDellaStatistica
sFile = sDirDestinazione & sRuota & "\" & Format2(n1) & ".txt"
Call PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)
If EstrPartenza > 0 Then
For idEstr = EstrPartenza + 1 To EstrazioniTot
Call Messaggio(sRuota & " " & idEstr & CG & Format2(n1))
Apertura = Chiusura
Chiusura = GetSommaRitardi(idEstr,n1,PrimaEstrazioneDellaStatistica)
Max = GetValoreMax(Chiusura,Apertura)
Min = GetValoreMin(Chiusura,Apertura)
DataEst = AnnoSE(idEstr) & "/" & MeseSE(idEstr) & "/" & GiornoSE(idEstr)
sRecord = DataEst & "," & Apertura & "," & Max & "," & Min & "," & Chiusura
Call ScriviFile(sFile,sRecord)
If ScriptInterrotto Then Exit For
Next ' For idEstr = EstrPartenza + 1 ...
End If ' If EstrPartenza > 0 Then...
If ScriptInterrotto Then Exit For
Next ' For n1 = 1 To 90...
Call AvanzamentoElab(1,90,CG)
'End If ' If CreaDirectoryRuote(sDirDest...
End If ' If sDirDestinazione <> "" Then...
Call Scrivi("Nella directory ")
Call Scrivi(sDirDestinazione)
Call Scrivi("sono stati creati gli output in formato testo")
MsgBox "Fine"
End Sub
Function GetSommaRitardi(Estrazione,n1,PrimaEstrazioneDellaStatistica)
Dim idEstr
Dim k
Dim R
For k = 1 To 90
If k <> n1 Then
Redim aNumeri(2)
aNumeri(1) = n1
aNumeri(2) = k
R = R + SerieRitardoSE(PrimaEstrazioneDellaStatistica,Estrazione,aNumeri,1)
End If ' If k <> n1 Then...
DoEventsEx
Next ' For k = 1 To 90...
GetSommaRitardi = R
End Function
Function GetValoreMax(Chiusura,Apertura)
' - a - valore Massimo è uguale alla Chiusura quando la Chiusura è maggiore dell'apertura
' - b - valore Massimo è uguale all'apertura quando la chiusura è minore della apertura
If Chiusura >= Apertura Then
GetValoreMax = Chiusura
Else
GetValoreMax = Apertura
End If ' If Chiusura >= Apertura Then...
End Function
Function GetValoreMin(Chiusura,Apertura)
' valore Minimo è uguale alla Chiusura quando la Chiusura è minore dell'apertura
' valore Minimo è uguale all'apertura quando la chiusura è maggiore dell'apertura
If Chiusura <= Apertura Then
GetValoreMin = Chiusura
Else
GetValoreMin = Apertura
End If ' If Chiusura <= Apertura Then...
End Function
Sub PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)
Redim aRighe(0)
Dim sData
If LeggiRigheFileDiTesto(sFile,aRighe) Then
' leggo l'ultima riga del file
Redim aV(0)
Call SplitByChar(aRighe(UBound(aRighe)),",",aV) ' scompongo