Ciao a tutti Sono nuovo ma mi sto dilettando con spaziometria.
A tal proposito, ho un problema. Ho creato lo script in basso partendo da una base. Dovrebbe in teoria raccogliermi i massimi ritardi storici, ma non va. FUnziona se non inserisco i cicli, ma appena ne metto uno o due per loopare per tutte le ruote le tabelle sono sballate. Le ruote cambiano, i numeri anche ma i ritardi no. Qual'è l'errore?
Grazie
CLASSE 2 GARANZIA 2IN BASE A Ritardo massimoRange analizzato [00015] [ 15] 16.04.1871 fino a [08673] [ 41] 04.04.2013Estrazioni analizzate totali : 8659
[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]
[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 23.67 [/TD]
[TD="bgcolor: #ffffff, align: center"] 24 [/TD]
[TD="bgcolor: #ffffff, align: center"] 97 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3156 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]
[TD="bgcolor: #ffffff, align: center"] 54.70 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 38 [/TD]
[TD="bgcolor: #ffffff, align: center"] 4025 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
Vedete la colonna ritardomax. Si vede già così che è completamente sballata
A tal proposito, ho un problema. Ho creato lo script in basso partendo da una base. Dovrebbe in teoria raccogliermi i massimi ritardi storici, ma non va. FUnziona se non inserisco i cicli, ma appena ne metto uno o due per loopare per tutte le ruote le tabelle sono sballate. Le ruote cambiano, i numeri anche ma i ritardi no. Qual'è l'errore?
Grazie
Codice:
[FONT=Verdana]Option Explicit[/FONT]Sub Main
Dim nClasse
Dim nGaranzia
Dim k,j,r1,r2
Dim sNumeri
Dim idComb
Dim nInizio,nFine
Dim idValoreDaAna
Dim sValoreUsato
Dim CombTot
ReDim aCombMigliori(5,4)
nGaranzia = ScegliGaranzia
idValoreDaAna = ScegliValoreDaAnalizzare(sValoreUsato)
nClasse = ScegliClasse
nInizio = EstrazioneIni
nFine = EstrazioneFin
Call Scrivi("CLASSE " & nClasse & " GARANZIA " & nGaranzia)
Call Scrivi("IN BASE A " & sValoreUsato)
Call Scrivi("Range analizzato " & GetInfoEstrazione(nInizio) & " fino a " & GetInfoEstrazione(nFine))
Call Scrivi("Estrazioni analizzate totali : " &(nFine + 1) - nInizio)
Call Scrivi
Dim aRuote(2)
For r1 = 1 To 2
r2 = r1 + 1
aRuote(1) = r1
aRuote(2) = r2
If nClasse > 0 And nGaranzia > 0 And nGaranzia <= nClasse And idValoreDaAna > 0 Then
Call Messaggio("Sviluppo combinazioni di classe " & nClasse)
CombTot = InitSviluppaComb(nClasse)
Call Messaggio("Statistica combinazioni in corso ")
ReDim aCol(nClasse)
Do While GetCombSviluppo(aCol) = True
Call AnalisiComb(aCol,aRuote,nGaranzia,aCombMigliori,nInizio,nFine,idValoreDaAna)
k = k + 1
If k Mod 20 = 0 Then
Call Messaggio("Statistica combinazioni in corso " & k & " di " & CombTot)
Call AvanzamentoElab(1,CombTot,k)
If ScriptInterrotto Then Exit Do
End If
Loop
Call Messaggio("")
ReDim aTitoli(5)
aTitoli(1) = "Combinazione"
aTitoli(2) = "Frequenza"
aTitoli(3) = "Ritardo"
aTitoli(4) = "RitardoMax"
aTitoli(5) = "Ruote"
Call InitTabella(aTitoli)
For k = 1 To UBound(aCombMigliori)
ReDim ADati(5)
ADati(1) = aCombMigliori(k,4)
ADati(2) = aCombMigliori(k,1)
ADati(3) = aCombMigliori(k,2)
ADati(4) = aCombMigliori(k,3)
ADati(5) = GetRuoteUsate(aRuote)
Call AddRigaTabella(ADati)
Next
Call CreaTabella
Else
MsgBox "Selezionare la classe di sviluppo e la garanzia , " & _
"si ricorda che la garanzia non puo essere maggiore della classe di sviluppo " & _
"e che bisogna scegliere quale valore statistico considerare per " & _
"alimentare la lista delle prime 100 Combinazioni "
End If
Next
End Sub
Sub AnalisiComb(aNum,aRuote,Garanzia,aCombMig,nInizio,nFine,idValoreDaAna)
Dim k,j
Dim Rit
Dim RitMax
Dim Freq
Dim Valore
Call StatisticaFormazione(aNum,aRuote,Garanzia,Rit,RitMax,0,Freq,nInizio,nFine)
Select Case idValoreDaAna
Case 1
Valore = Freq
Case 2
Valore = Rit
Case 3
Valore = RitMax
End Select
For k = 1 To UBound(aCombMig)
If Valore >= aCombMig(k,0) Then
For j = UBound(aCombMig) To(k + 1) Step - 1
aCombMig(j,0) = aCombMig(j - 1,0)
aCombMig(j,1) = aCombMig(j - 1,1)
aCombMig(j,2) = aCombMig(j - 1,2)
aCombMig(j,3) = aCombMig(j - 1,3)
aCombMig(j,4) = aCombMig(j - 1,4)
Next
aCombMig(k,0) = Valore
aCombMig(k,1) = Freq
aCombMig(k,2) = Rit
aCombMig(k,3) = RitMax
aCombMig(k,4) = StringaNumeri(aNum)
Exit For
End If
Next
End Sub
Function InitSviluppaComb(Classe)
Dim k
ReDim aNum(90)
For k = 1 To 90
aNum(k) = k
Next
InitSviluppaComb = InitSviluppoIntegrale(aNum,Classe)
End Function
Function ScegliClasse()
ReDim aVoci(3)
aVoci(0) = "Estratto"
aVoci(1) = "Ambo"
aVoci(2) = "Terno"
aVoci(3) = "Quaterna"
ScegliClasse = ScegliOpzioneMenu(aVoci,2,"Secegli tipo combinazione") + 1
End Function
Function ScegliGaranzia()
ReDim aVoci(3)
aVoci(0) = "Estratto"
aVoci(1) = "Ambo"
aVoci(2) = "Terno"
aVoci(3) = "Quaterna"
ScegliGaranzia = ScegliOpzioneMenu(aVoci,2,"Secegli garanzia") + 1
End Function
Function ScegliValoreDaAnalizzare(sValore)
ReDim aVoci(2)
Dim i
aVoci(0) = "Frequenza"
aVoci(1) = "Ritardo"
aVoci(2) = "Ritardo massimo"
i = ScegliOpzioneMenu(aVoci,0,"Quale valore considerare per l'ordinamento ? ")
sValore = aVoci(i)
ScegliValoreDaAnalizzare = i + 1
End Function
Function GetRuoteUsate(aRuote)
Dim k
Dim s
For k = 1 To UBound(aRuote)
s = s & SiglaRuota(aRuote(k)) & " "
Next
GetRuoteUsate = Trim(s)
End Function
CLASSE 2 GARANZIA 2IN BASE A Ritardo massimoRange analizzato [00015] [ 15] 16.04.1871 fino a [08673] [ 41] 04.04.2013Estrazioni analizzate totali : 8659
[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]
[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] 23.67 [/TD]
[TD="bgcolor: #ffffff, align: center"] 24 [/TD]
[TD="bgcolor: #ffffff, align: center"] 97 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3156 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]
[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]
[TD="bgcolor: #ffffff, align: center"] 54.70 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 38 [/TD]
[TD="bgcolor: #ffffff, align: center"] 4025 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]
Vedete la colonna ritardomax. Si vede già così che è completamente sballata
Ultima modifica: