Novità

Come fare per caricare ed elaborare simultaneamente più files esterni?

lotto_tom75

Advanced Premium Member
Vorrei modificare questo script a tale scopo... ma non saprei da dove partire... :eek: Chi mi darebbe un LA? :D Come si suol dire in musica... per indicare un punto d'inizio... :p

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(10)
aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_
'aRuote(1) = NZ_



nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff = 0 And RetIncrRitMax >= 0) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub


Io vorrei poter caricare ed elaborare simultaneamente:

lunghette.txt
lunghette-1.txt
ecc...

fino possibilmente...

a lunghette-n.txt con n numero voluto...

Grazie BIG BROTHERS (LuigiB, Joe91, Mike58, Disaronno, Blackmore, ecc... tanto per fare qualche nome o meglio nick ;) ) ovviamente ce ne sono molti altri ma non posso elencarli tutti/e

Ciao a tutti/e e buon martedì :o

Ps: Anche lo script da modificare è molto pratico e potente.. io fossi in voi se non ce l'avessi... lo prenderei al volo ;)
 
ciao Tom , simultaneamente non si puo fare nulla ... semmai consecutivamente ...non so se tu volessi dire proprio simultaneamente
 
ciao Tom , simultaneamente non si puo fare nulla ... semmai consecutivamente ...non so se tu volessi dire proprio simultaneamente

Ciao grandissimo, va bene anche consecutivamente basta che:

1) li possa caricare tutti insieme...
2) possa cliccare sul fulmine...
3) e poi lo script lavori da solo analizzandone... uno alla volta (va benissimo anche se consecutivamente ;) )

es...

analizza lunghette-1.txt

poi...

analizza lunghette-2.txt

ecc...

fino alla fine...

4) Per ogni lunghetta analizzata (automaticamente) crei il relativo report

Ciao :o
 
Ultima modifica:
c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo.
ciao
 
buon giorno a tutti :-) si potrebbe adattare questo listato al 10&Lotto? Grazie Mille. e fare le statistiche in tabella? id.combinazione.freq.rit.ecc? domanda x Luigi ciao Luigi calcolare il ciclo teorico e la frequenza teorica al 10elotto è relativamente semplice per la combinazione secca, ma per l'mbo in terzina,o quartina? non riesco a generalizzare la funzione! Can you help me? Ciao :-)
 
buon giorno a tutti :-) si potrebbe adattare questo listato al 10&Lotto? Grazie Mille. e fare le statistiche in tabella? id.combinazione.freq.rit.ecc? domanda x Luigi ciao Luigi calcolare il ciclo teorico e la frequenza teorica al 10elotto è relativamente semplice per la combinazione secca, ma per l'mbo in terzina,o quartina? non riesco a generalizzare la funzione! Can you help me? Ciao :-)
ciao , non ne ho idea si tratta di una formula matematica andra aggiustata partendo dalla stessa formula per il lotto.
 
c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo.
ciao

Per adesso arrivato... fin qui... adesso inchiodato... però :D

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq

'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647

Dim sdir 

sdir = ScegliDirectory()

Dim aretfiles

'*************** 
'c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) 
'la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo. 
'ciao 
'***************

ElencoFileInDirectory (sdir, aretfiles , ".txt")



ReDim aRuote(10)
aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_
'aRuote(1) = NZ_



nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff = 0 And RetIncrRitMax >= 0) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub

In particolare non ho la più pallida idea di come avere l'elenco dei files nella directory voluta...

:rolleyes:
 
Per adesso arrivato... fin qui... adesso inchiodato... però :D

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq

'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647

Dim sdir 

sdir = ScegliDirectory()

Dim aretfiles

'*************** 
'c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) 
'la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo. 
'ciao 
'***************

ElencoFileInDirectory (sdir, aretfiles , ".txt")



ReDim aRuote(10)
aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_
'aRuote(1) = NZ_



nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff = 0 And RetIncrRitMax >= 0) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub

In particolare non ho la più pallida idea di come avere l'elenco dei files nella directory voluta...

:rolleyes:



si vede che non hai pensato abbastanza .... per ora hai richiamato la funzione ti ho detto che ti ritorna un elenco di file sui quali devi fare un ciclo ..quindi c'è un ciclo esterno che cicla sui file e interno a questo ciclo c'è il tuo script che di volta in volta dovrà operare sul file puntato in quel momento dal ciclo stesso.
 
si vede che non hai pensato abbastanza .... per ora hai richiamato la funzione ti ho detto che ti ritorna un elenco di file sui quali devi fare un ciclo ..quindi c'è un ciclo esterno che cicla sui file e interno a questo ciclo c'è il tuo script che di volta in volta dovrà operare sul file puntato in quel momento dal ciclo stesso.

Si luigi capisco... ma il mio problema risiede proprio nel non saper come identificare il file 0 file 1 file 2 ecc... che dovrebbero essere incamerati...dall'array aRetFiles gestito dalla relativa funzione... :rolleyes:

In particolare ogni volta che eseguo questo codice:

Codice:
 Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq

'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647

Dim sdir 

sdir = ScegliDirectory()

Dim aRetFiles


'*************** 
'c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) 
'la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo. 
'ciao 
'***************

Dim sExt

sExt=".txt"

ElencoFileInDirectory (sdir, aRetFiles , sExt)




ReDim aRuote(10)
aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_
'aRuote(1) = NZ_



nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff = 0 And RetIncrRitMax >= 0) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub

Ottengo questo erroraccio... :eek:

problema-1.jpg

:confused:
 
e gia .. chissa da che dipende .... tom facciamo cosi io tra poco esco dall'ufficio e in un ora e mezzo torno a casa ... quindi hai un 'ora e mezzo per capire di che banalità si tratta il tuo erroraccio e vedi di risolvere se vuoi che io ti rivolga ancora la parola ...
 
e gia .. chissa da che dipende .... tom facciamo cosi io tra poco esco dall'ufficio e in un ora e mezzo torno a casa ... quindi hai un 'ora e mezzo per capire di che banalità si tratta il tuo erroraccio e vedi di risolvere se vuoi che io ti rivolga ancora la parola ...

jl4r3w4u8xwbzpgg.png
 

Felicissimo di poter ancora parlare insieme :D ti posto l'erroraccio... trovato e risolto...

Codice:
Dim sExt

sExt=".txt"

Call ElencoFileInDirectory (sdir, aRetFiles , sExt)

'Scrivi "file1: " & aRetFiles(0)
'Scrivi "file2: " & aRetFiles(1)
'Scrivi "file3: " & aRetFiles(2)
'Scrivi "file4: " & aRetFiles(3)

In sostanza mancava la chiamata di funzione (call) :rolleyes: :D

Poi però adesso ne ho un altro...

problema-2.jpg

Spero non sia GRAVE.. come il primo che ha rischiato di non farci comunicare mai più :o
Ciao e grazie per le tue dritte talvolta telepatiche... e illuminanti... seppur minacciose... ;)
 
Felicissimo di poter ancora parlare insieme :D ti posto l'erroraccio... trovato e risolto...

Codice:
Dim sExt

sExt=".txt"

Call ElencoFileInDirectory (sdir, aRetFiles , sExt)

'Scrivi "file1: " & aRetFiles(0)
'Scrivi "file2: " & aRetFiles(1)
'Scrivi "file3: " & aRetFiles(2)
'Scrivi "file4: " & aRetFiles(3)

In sostanza mancava la chiamata di funzione (call) :rolleyes: :D

Poi però adesso ne ho un altro...

Vedi l'allegato 13727

Spero non sia GRAVE.. come il primo che ha rischiato di non farci comunicare mai più :o
Ciao e grazie per le tue dritte talvolta telepatiche... e illuminanti... seppur minacciose... ;)

Tre minuti dopo che ho postato il 2° problema ho trovato da solo la soluzione....

Codice:
ReDim aRetFiles(0)


'*************** 
'c'è un 'istruzione negli script , si chiama ElencoFileInDirectory (o qualcosa di simile) 
'la lanci ti torna un array con i file trovati , i file trovati li gestisci con un ciclo. 
'ciao 
'***************

Dim sExt

sExt=".txt"

Call ElencoFileInDirectory (sdir, aRetFiles , sExt)

Scrivi "file1: " & aRetFiles(0)
Scrivi "file2: " & aRetFiles(1)
Scrivi "file3: " & aRetFiles(2)
Scrivi "file4: " & aRetFiles(3)

Questa volta sembra mancasse un ReDim aRetFiles(0) ovvero la possibilità di ridimensionare in dinamico l'array aRetFiles se non erro? :rolleyes:

Comunque adesso mi mostra i file txt in qualunque directory...

Ora provo a baloccarmi un pò con i vari cicli... e cerco di concludere l'ambaradan!

Grazie ancora per il supporto "telepatico" a distanza Master! ;)
 
eheh lo vedi che le maniere delicate funzionano sempre .. mi fa piacere ! Spremerti è proprio quello che dovevi fare e sei arrivato a soluzione bene !
 
Luigi help me please :)
Per i files di piccole dimensioni no problem... carica e analizza tutto...
Ma per i files un pò più grossi... si rifiuta completamente di iniziare l'elaborazione (non da alcun errore... ma lascia semplicemente bianco dopo neanche un secondo il foglio di output) . Se li analizzo uno alla volta... non batte ciglio... e lavora... Ora penso si tratti di un caricamento "troppo tutto insieme" mentre a me basterebbe che una volta indicato allo script i files da caricare e analizzare quest'ultimo se li caricasse in memoria uno alla volta con i suoi tempi... (non c'e' fretta... :) ) e anche se sono molto corposi.. (es. 40 mb l'uno :p) portasse a termine la sua missione... Come potrei fare per irrobustire... il precedente script in tal senso? :rolleyes:
 
Ultima modifica:
ciao Tom , in realta la sequenza dovrebbe essere questa aprofile --> leggo linea -- Altra linea ? Si (leggo linea) No (Chiudo file) per gestire file cosi grandi dovresti leggere i file una riga alla volta . purtroppo questo influirà sulla velocità .
Comunqu per farlo non ci sono istruzioni specifiche in spaziometria , tuttavua spazioscript è un estensione di vb script e in vbscript si fa cosi. Prova dovrebbe funzionare

Codice:
Set fso = CreateObject("Scripting.FileSystemObject")
Set listFile = fso.OpenTextFile("list.txt")
do while not listFile.AtEndOfStream 
    sLinea  =  listFile.ReadLine()
     
loop
fso.close
 
Ultima modifica di un moderatore:
ciao Tom , in realta la sequenza dovrebbe essere questa aprofile --> leggo linea -- Altra linea ? Si (leggo linea) No (Chiudo file) per gestire file cosi grandi dovresti leggere i file una riga alla volta . purtroppo questo influirà sulla velocità .
Comunqu per farlo non ci sono istruzioni specifiche in spaziometria , tuttavua spazioscript è un estensione di vb script e in vbscript si fa cosi. Prova dovrebbe funzionare

Codice:
Set fso = CreateObject("Scripting.FileSystemObject")
Set listFile = fso.OpenTextFile("list.txt")
do while not listFile.AtEndOfStream 
    sLinea  =  listFile.ReadLine()
     
loop
fso.close

Per ora ho provato ad implementare la tua dritta così:


Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(1)
aRuote(1) = BA_
'aRuote(2) = CA_
'aRuote(3) = FI_
'aRuote(4) = GE_
'aRuote(5) = MI_
'aRuote(6) = NA_
'aRuote(7) = PA_
'aRuote(8) = RO_
'aRuote(9) = TO_
'aRuote(10) = VE_
'aRuote(1) = NZ_


'prova Lettura files corposi

Dim fso
Dim listfile
Dim fname

Set fso = CreateObject("Scripting.FileSystemObject")
Set listfile = fso.OpenTextFile("list.txt")
Do While Not listFile.AtEndOfStream
sFile = listFile.ReadLine()

Scrivi sFile

Loop

'--------------------------


nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff < 2) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub


Però oltre a dover togliere fso.close (che mi dice non essere supportato)
la riga Call LeggiRigheFileDiTesto(sFile,aRighe) secondo me andrebbe cambiata...
in quanto , se ho capito bene...

sFile = listFile.ReadLine() legge già la linea... e quindi

sFile in realtà è già la linea...

ma non so con cosa cambiare la riga in questione...

Al momento mi visualizza senza errori il file di test list.txt o meglio le sue linee
ma ovviamente non mi elabora nulla...

:rolleyes:
 
Ultima modifica:
Per ora ho provato ad implementare la tua dritta così:


Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(1)
aRuote(1) = BA_
'aRuote(2) = CA_
'aRuote(3) = FI_
'aRuote(4) = GE_
'aRuote(5) = MI_
'aRuote(6) = NA_
'aRuote(7) = PA_
'aRuote(8) = RO_
'aRuote(9) = TO_
'aRuote(10) = VE_
'aRuote(1) = NZ_


'prova Lettura files corposi

Dim fso
Dim listfile
Dim fname

Set fso = CreateObject("Scripting.FileSystemObject")
Set listfile = fso.OpenTextFile("list.txt")
Do While Not listFile.AtEndOfStream
sFile = listFile.ReadLine()

Scrivi sFile

Loop

'--------------------------


nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim aRighe(0)
Call LeggiRigheFileDiTesto(sFile,aRighe)
For k = 0 To UBound(aRighe)
If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & aRighe(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff < 2) Then

Call Scrivi(aRighe(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(aRighe),k)
End If
Next
End Sub


Però oltre a dover togliere fso.close (che mi dice non essere supportato)
la riga Call LeggiRigheFileDiTesto(sFile,aRighe) secondo me andrebbe cambiata...
in quanto , se ho capito bene...

sFile = listFile.ReadLine() legge già la linea... e quindi

sFile in realtà è già la linea...

ma non so con cosa cambiare la riga in questione...

Al momento mi visualizza senza errori il file di test list.txt o meglio le sue linee
ma ovviamente non mi elabora nulla...

:rolleyes:

Ce l'ho rifattaaaaaaaaaaaaaaaaaaaaaa!!! ahahah basta porti la domanda ultimamente che telepaticamente.. mi invii la risposta si vede! :D


Forse ho messo qualche fagianata anche qui... ma per adesso sembra funzionare... almeno con file di piccole dimensioni...

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(1)
aRuote(1) = BA_
'aRuote(2) = CA_
'aRuote(3) = FI_
'aRuote(4) = GE_
'aRuote(5) = MI_
'aRuote(6) = NA_
'aRuote(7) = PA_
'aRuote(8) = RO_
'aRuote(9) = TO_
'aRuote(10) = VE_
'aRuote(1) = NZ_


'prova Lettura files corposi

Dim fso
Dim listfile
Dim fname

Set fso = CreateObject("Scripting.FileSystemObject")
Set listfile = fso.OpenTextFile("list.txt")
Do While Not listFile.AtEndOfStream
sFile = listFile.ReadLine()

Scrivi sFile

Loop

'--------------------------


nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim sFile(0)
'Call 
For k = 0 To UBound(sFile)
'If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & sFile(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff < 2) Then

Call Scrivi(sFile(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
'End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(sFile),k)
End If
Next
End Sub
 
Ultima modifica:
Ce l'ho rifattaaaaaaaaaaaaaaaaaaaaaa!!! ahahah basta porti la domanda ultimamente che telepaticamente.. mi invii la risposta si vede! :D


Forse ho messo qualche fagianata anche qui... ma per adesso sembra funzionare... almeno con file di piccole dimensioni...

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(1)
aRuote(1) = BA_
'aRuote(2) = CA_
'aRuote(3) = FI_
'aRuote(4) = GE_
'aRuote(5) = MI_
'aRuote(6) = NA_
'aRuote(7) = PA_
'aRuote(8) = RO_
'aRuote(9) = TO_
'aRuote(10) = VE_
'aRuote(1) = NZ_


'prova Lettura files corposi

Dim fso
Dim listfile
Dim fname

Set fso = CreateObject("Scripting.FileSystemObject")
Set listfile = fso.OpenTextFile("list.txt")
Do While Not listFile.AtEndOfStream
sFile = listFile.ReadLine()

Scrivi sFile

Loop

'--------------------------


nSorte = 1
Call Messaggio("Lettura file di testo")
ReDim sFile(0)
'Call 
For k = 0 To UBound(sFile)
'If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & sFile(k),".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
If(Diff < 2) Then

Call Scrivi(sFile(k) & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)
End If
'End If
If k Mod 100 = 0 Then
Call Messaggio("Colonna : " & k)
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(0,UBound(sFile),k)
End If
Next
End Sub

No invece non funzia.. non da errore ma non funzia... :(
non riesce a scomporre le righe in valori anum per poterli analizzare... mi pare... :confused:
 
Ultima modifica:
Non so esattamente come ma forse... ci sono quasi...

Codice:
Option Explicit
Sub Main
Dim sFile
Dim k,y
Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine,RetFreq
'sFile = ScegliFile("c:\lunghette",".txt","lunghette.txt")
'Inizio = 1
'Fine = 8647
ReDim aRuote(1)
aRuote(1) = BA_
'aRuote(2) = CA_
'aRuote(3) = FI_
'aRuote(4) = GE_
'aRuote(5) = MI_
'aRuote(6) = NA_
'aRuote(7) = PA_
'aRuote(8) = RO_
'aRuote(9) = TO_
'aRuote(10) = VE_
'aRuote(1) = NZ_


'prova Lettura files corposi

Dim fso
Dim listfile
Dim fname

Set fso = CreateObject("Scripting.FileSystemObject")
Set listfile = fso.OpenTextFile("list.txt")
Do While Not listFile.AtEndOfStream
sFile = listFile.ReadLine()

'Scrivi sFile

Loop

'--------------------------


nSorte = 1
Call Messaggio("Lettura file di testo")
'ReDim sFile(0)
'Call
'For k = 0 To UBound(sFile)
'If aRighe(k) <> "" Then
ReDim aNum(0)
Call SplitByChar("." & sFile,".",aNum)
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq,Inizio,Fine)
'Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)

RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

Dim Diff
Diff = RetRitMax - RetRit

'If(RetRit >= 0) Then

'If(RetIncrRitMax > 0) Then

'If(Diff < 2 And RetIncrRitMax > 0) Then
'If(RetRit>=0) Then

Call Scrivi(sFile & " ra : " & RetRit & " rs: " & RetRitMax & " incmax: " & RetIncrRitMax & " diff: " & Diff)

'End If
'End If


If k Mod 100 = 0 Then
'Call Messaggio("Colonna : " & k)
'If ScriptInterrotto Then Exit For
'Call AvanzamentoElab(0,UBound(sFile),k)
End If
'Next
End Sub

E' velocissimo... (84.000 colonne in meno di 1 sec quasi :D)
Non da errore...
Mi valuta e analizza correttamente i parametri della riga...

Ma mi considera solo l'ultima riga delle 84.000 righ edel fiel di test

precisamente...

79.89.90 ra : 0 rs: 38 incmax: 0 diff: 38


In sostanza dovrei mettere opportunatamente un ciclo for... per considerarle tutte ma mi sono impantanato in questo bicchier d'acqua... :mad: :rolleyes:


Provando a riattivare... il for...

ubound-non-corrispondente.jpg
 
Ultima modifica:

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 21 gennaio 2025
    Bari
    78
    09
    70
    03
    23
    Cagliari
    32
    88
    30
    13
    45
    Firenze
    87
    23
    15
    39
    86
    Genova
    71
    48
    67
    59
    23
    Milano
    58
    50
    80
    85
    29
    Napoli
    90
    81
    79
    82
    62
    Palermo
    70
    33
    90
    05
    10
    Roma
    15
    71
    55
    85
    76
    Torino
    89
    09
    18
    33
    69
    Venezia
    44
    80
    82
    73
    58
    Nazionale
    80
    25
    13
    63
    17
    Estrazione Simbolotto
    Bari
    39
    36
    34
    14
    31
Indietro
Alto