Novità

Subscript Of Range (dopo la fine di ogni primo giro di analisi) . Perchè?

lotto_tom75

Advanced Premium Member
Codice:
Sub AnalisiLunghetteFromSceglinumeri(Inizio,Fine,aRuote,Sorte,idFiltro,qIncr,bPrimaEstrFissa,nDistanza)
Dim nTotLunghette
Dim k,sChrSep,nClasse,sNumReal,nClasseiniziale,nClassefinale
ReDim aLunghette(0)
Dim clsL,collLunghette,FiltroEsaminato
Set collLunghette = GetNewCollection
FiltroEsaminato = ScriviFiltro(idFiltro)
sChrSep = " "
ScegliNumeri(aLunghette)
'nClasse = CInt(InputBox(" classe sviluppo ",,2))
nClasseiniziale = CInt(InputBox(" classe sviluppo iniziale ",,10))
nClassefinale = CInt(InputBox(" classe sviluppo finale ",,3))

For nClasse = nClasseiniziale To nClassefinale Step - 1

nTotLunghette = InitSviluppoIntegrale(aLunghette,nClasse)
k = 0
Do While GetCombSviluppo(aLunghette)
k = k + 1
Set clsL = New clsLunghetta
Call clsL.Init(aLunghette,sChrSep,Inizio,Fine,aRuote,Sorte)
If clsL.IsCondizioneRispettata(idFiltro,qIncr) Then
Call clsL.EseguiStatistica
collLunghette.Add clsL
End If
If k Mod 50 = 0 Then
Call Messaggio("Riga " & k & "  valide " & collLunghette. count & " classe " & nClasse & " sorte " & Sorte & " ruote " & StringaRuote(aRuote) & " lung. totali " & nTotLunghette )

DoEventsEx
Call AvanzamentoElab(1,nTotLunghette,k)
If ScriptInterrotto Then Exit Do
End If
Loop

Call Scrivi
Call Scrivi("Elaborazione effettuata con archivio lotto aggiornato all'estrazione del: " & giorno(EstrazioneFin) & "-" & Mese(EstrazioneFin) & "-" & Anno(EstrazioneFin))
Call Scrivi


Scrivi "Range analisi         : " & GetInfoEstrazione(Inizio) & " - " & GetInfoEstrazione(Fine)
Scrivi "Classe di sviluppo    : " & nClasse
Scrivi "Lunghette esaminate   : " & nTotLunghette & " Valide : " & collLunghette.count
Scrivi "Sorte                 : " & NomeSorte(Sorte)
Scrivi "Ruote                 : " & StringaRuote(aRuote)
Scrivi

Call Scrivi
If collLunghette.count > 0 Then
Call OrdinaItemCollection(collLunghette,"IncrRitMax",,,- 1)
For Each clsL In collLunghette
If nDistanza = 0 Then
Call Scrivi("Numeri Formazione     : " & clsL.LunghettaString)
Else
sNumReal = clsL.TrasformaArrayNumVirToNumReal(nDistanza,bPrimaEstrFissa)
Call Scrivi("Numeri Formazione     : " & clsL.LunghettaString & "   " & "Numeri Verifica   : " & sNumReal)
End If
Call Scrivi("Ritardo               : " & clsL.Ritardo)
Call Scrivi("RitMax                : " & clsL.RitardoMax)
Call Scrivi("Freq                  : " & clsL.Frequenza)
Next
Else
Scrivi "Nessuna lunghetta rispetta le condizioni"
Scrivi "Lunghette esaminate " & nTotLunghette
End If

Scrivi
Scrivi("Tempo trascorso: " & TempoTrascorso)

If ScriptInterrotto Then Exit For
Next

End Sub

Questo mio code mi da sempre errore Subscript Of Range dopo la prima analisi che porta a termine apparentemente senza errori. Il limite di classe per lo sviluppo di tipo integrale è attualmente 20. Perchè anche con classi nettamente inferiori (nell'es da 10 a 3) mi da lo stesso errore??? :unsure: Grazie

La riga cui si riferisce l'errore bloccante... è questa:

Codice:
 Do While GetCombSviluppo(aLunghette)
 
Ultima modifica:

lotto_tom75

Advanced Premium Member
Ce l'ho fatta! :D

così :

Codice:
Dim counter
counter = 0

For nClasse = nClasseiniziale To nClassefinale Step 1

nTotLunghette = InitSviluppoIntegrale(aLunghette,nClasse)
k = 0
Do While counter < nTotLunghette '(aLunghette,nClasse)
counter = counter + 1
 

Ultima estrazione Lotto

  • Estrazione del lotto
    venerdì 19 aprile 2024
    Bari
    39
    05
    81
    89
    73
    Cagliari
    56
    21
    01
    90
    03
    Firenze
    05
    56
    68
    27
    09
    Genova
    42
    50
    90
    27
    83
    Milano
    16
    71
    29
    85
    04
    Napoli
    29
    19
    23
    63
    50
    Palermo
    35
    54
    33
    57
    61
    Roma
    17
    29
    43
    55
    74
    Torino
    69
    60
    03
    01
    26
    Venezia
    05
    57
    59
    43
    34
    Nazionale
    30
    43
    64
    65
    21
    Estrazione Simbolotto
    Genova
    02
    20
    25
    12
    19

Ultimi Messaggi

Alto