Novità

Algoritmo script per 10 e lotto ed extra 10 e lotto

script modificato per CSV .
Codice:
Option Explicit
Sub Main()
   Dim sDir : sDir = "C:\Users\Admin\Desktop\"
   Dim sPercorsoLocale : sPercorsoLocale = "C:\Windows\Temp\10elotto.txt"
   Call EliminaFile(sPercorsoLocale)
   '
   Dim sFileCsv01,sFileCsv02,sRiga01,sRiga02
   sFileCsv01 = GetDirectoryAppData & "10eLottoSerale.csv" ' percorso di scrittura file excel
   sFileCsv02 = GetDirectoryAppData & "10eLottoEXTRA.csv" ' percorso di scrittura file excel
   Call EliminaFile(sFileCsv01) : Call EliminaFile(sFileCsv02)
   '
   sRiga01 = "prog;Data;n1;n2;n3;n4;n5;n6;n7;n8;n9;n10;n11;n12;n13;n14;n15;n16;n17;n18;Oro;DoppioOro" ' scrive le colonne (ci vogliono)
   sRiga02 = "prog;Data;n1;n2;n3;n4;n5;n6;n7;n8;n9;n10;n11;n12;n13;n14;n15" ' scrive le colonne (ci vogliono)
   Call ScriviFile(sFileCsv01,sRiga01,False) : Call ScriviFile(sFileCsv02,sRiga02,False) ' scrive le colonne (ci vogliono)
   '
   Dim sLink : sLink = "https://www.lottologia.com/10elotto/archivio-estrazioni/?as=TXT"
   '
   ReDim aRighe(00) : Dim nRiga
   Dim nRetNumEstr : nRetNumEstr = 00
   Call Messaggio("Download Archivio 10eLottoSerale")
   If DownloadFromWeb(sLink,sPercorsoLocale) Then
      If FileEsistente(sPercorsoLocale) Then
         If LeggiRigheFileDiTesto(sPercorsoLocale,aRighe) Then
            For nRiga = UBound(aRighe) - 01 To 02 Step - 01
               If Trim(aRighe(nRiga)) <> "" Then
                  '
                  aRighe(nRiga) = Replace(aRighe(nRiga),"-",">")
                  aRighe(nRiga) = Replace(aRighe(nRiga),vbTab,">")
                  aRighe(nRiga) = Replace(aRighe(nRiga),"/",">")
                  aRighe(nRiga) = Replace(aRighe(nRiga)," ",">")
                  aRighe(nRiga) = Replace(aRighe(nRiga),".",">")
                  Do While InStr(aRighe(nRiga),">>")
                     aRighe(nRiga) = Replace(aRighe(nRiga),">>",">")
                  Loop
                  ReDim aValori(00)
                  Call SplitByChar(aRighe(nRiga),">",aValori)
                  '
                  Dim nGiornoCorr,nMeseCorr,nAnnoCorr,sRetData
                  nGiornoCorr = Int(aValori(02))
                  nMeseCorr = Int(aValori(01))
                  nAnnoCorr = Int(aValori(00))
                  sRetData = nGiornoCorr & "/" & nMeseCorr & "/" & nAnnoCorr
                  sRetData = FormattaStringa(sRetData,"dd/mm/yyyy")
                  nRetNumEstr = nRetNumEstr + 01
                  '
                  Dim kk
                  For kk = 01 To 20
                     ReDim Preserve aRetNumVinc(kk + 02)
                     aRetNumVinc(kk) = Int(aValori(kk + 02))
                  Next
                  '
                  Dim aRetNumOro,aRetNumDoppioOro
                  aRetNumOro = Int(aValori(23))
                  aRetNumDoppioOro = Int(aValori(24))
                  '
                  For kk = 01 To 15
                     ReDim Preserve aRetNumExtra(kk)
                     aRetNumExtra(kk) = Int(aValori(kk + 24))
                  Next
                  '
                  For kk = 01 To 20
                     If aRetNumVinc(kk) = aRetNumOro Then aRetNumVinc(kk) = 00
                     If aRetNumVinc(kk) = aRetNumDoppioOro Then aRetNumVinc(kk) = 00
                  Next
                  '
                  aRetNumVinc(21) = aRetNumOro
                  aRetNumVinc(22) = aRetNumDoppioOro
                  '
                  Dim aGetArchivio
                  If IsDate(sRetData) = True Then
                     If nRetNumEstr <> 00 Then
                        If UBound(aRetNumVinc) = 22 Then
                           If IsNumeric(aRetNumOro) Then
                              If IsNumeric(aRetNumDoppioOro) Then
                                 If UBound(aRetNumExtra) = 15 Then
                                    aGetArchivio = True
                                    '
                                    sRiga01 = nRetNumEstr & ";" & sRetData & ";"
                                    For kk = 01 To 20 : sRiga01 = sRiga01 & aRetNumVinc(kk) & ";" : Next
                                    sRiga02 = nRetNumEstr & ";" & sRetData & ";"
                                    For kk = 01 To 15 : sRiga02 = sRiga02 & aRetNumExtra(kk) & ";" : Next
                                    Call ScriviFile(sFileCsv01,sRiga01,False) : Call ScriviFile(sFileCsv02,sRiga02,False)
                                    '
                                 End If
                              End If
                           End If
                        End If
                     End If
                  End If
                  aGetArchivio = False
               End If
            Next
         End If
      End If
   End If
   Call EliminaFile(sPercorsoLocale)
   Call CloseFileHandle(sFileCsv01) : Call CloseFileHandle(sFileCsv02)
   Call LanciaFile(sFileCsv01) : Call LanciaFile(sFileCsv02) ' scrive e lancia file excel per controllo
   Call Scrivi("Ho scritto il file excel nel percorso : " & sFileCsv01,True)
   Call Scrivi("Ho scritto il file excel nel percorso : " & sFileCsv02,True)
End Sub
 
ciao cerchero di modificarlo per il csv,
non dovrebbe essere difficile.
per curiosita , se vuoi citarlo , e' chi sarebbe l' utente a chi assomiglia il mio stile ?
Dai Fabri, i Disaronno,Magia,Amaretto lo stile e quello e che stile.
Peccato che non usi spaziolight, sicuramente visto che sono stato uno dei pochi ad usarlo, con il tuo contributo ci saremmo tolti più di qualche soddisfazione.
Invece navigando nel deserto anche io mi sono perso.

Ottimo anche lo script di scrittura in formato csv.

P.s. per il tuo codice di consiglio per la radice quadrata "Grande" sono funzionanti entrambe le soluzioni.

👍👋💪
 
ciao mike58.
rimarrai deluso , ma i nick che hai elencato , non li conosco ,
e anche spulciando in rete , non ho trovato notizie , dei miei fratelli di stile
l' unica cosa che posso dire , e che il pc che uso , lo comprato usato , in un mercatino ,
aveva installato spaziometria , e di conseguenza alcuni listati ,
molti anche tuoi ,ed un indirizzo di un forum estero , dove ci sono numerosi listati ,
da qui forse ho preso lo stile .
in quanto a spaziolight , spero molto presto di poter avere un pc adatto .
cosi da poter farti compagnia in mezzo al deserto e cercare la rotta via ,
adesso comincio ad essere stufo di xp , ma non di spaziometria .
comunque saluto anche LuigiB , ed Edoardo_95 per il nuovo e vecchio progetto
 
Visto che ho citato io i Nick , fratelli di stile , devo aggiungere che anche loro hanno dato un contributo notevole nonchè ottima collaborazione alla creazione di script vari.
Bene comunque sei molto bravo ed ho molto piacere ad interagire con te nella materia scriptica.

Quando sarai pronto con il vbnet di spaziolight , ti accorgerai che la velocità e diversa e superiore al vbscript, anche se il progetto è rimasto un pochetto indietro rispetto ai codici vbscript

P.s. Tempo addietro mi ero cimentato anche con il vbnet di VL7 per questo ero un pochetto avvantaggiato.
chiaro usandoli poco si rischia di perdere quel poco di conoscenza acquisita.

Penso che il progetto 1oelotto di raccolta archivi sia terminato, oramai abbiamo tutti gli elementi per ricavarne una qualche statistica, ma questo sta alla nostra e vostra fantasia.

Ciao
 
Buongiorno a Tutti,
Per Mike58 -----> "Invece navigando nel deserto anche io mi sono perso."

Purtroppo dovendo dare priorità a dei problemi più seri ho dedicato poco tempo ad alcuni progetti che avrei voluto approfondire, ma che comunque farò e proporrò, ovvio non mi sto giustificando, nel mio piccolo sono ancora indietro nel esporre quanto da Te Proposto, ma mi sei stato di Aiuto anche nel distrarmi ed applicarmi a quanto poi mi piace. Spaziolight è davvero un ottimo programma e spero possa continuare nel suo sviluppo in quanto si potrebbe integrare ancora con ottime e buone funzioni, sia statistiche che con vari script, ma effettivamente se poi sei il solo che si è messo a navigare ( senza offesa per nessuno) si rischia come sempre di perdere l'entusiasmo, per quanto mi riguarda mi spiace davvero non essere stato presente nel passato, avrei imparato in presa diretta molto i più che come autodidatta.

Sarebbe bello avere le sorgenti del programma per poter integrare qualcosa di "personale" ma non so se si può chiedere visto l'impegno profuso dagli autori...

Spero davvero anche se a piccoli passi si possa continuare, ci metto un pò di egoismo per me mi aiuterebbe molto nel distrarmi....

Comunque Grazie davvero per quanto fatto fino ad oggi.
 
allego per chi fosse interessato gli archivi , compatibili con Spaziometria ,
da inizio concorsi , con extra .
1) i 20 estratti 10elotto serale pui oro e doppio oro.
eliminati oro e doppio oro dalla colonna vincente e colocati nelle utime due posizioni cioe la 19 e la 20,
questo per usare con spaziometria e i codici FT
2) i 15 numeri extra .
mike , per spaziolight , ho letto questo ,
mi puoi postare un esempio dell' archivio 10elotto presente in esso .
 

Allegati

Ciao Fabri intanto un enorme Grazie per il bel contributo.
Anche se io avrei messo l'archivio dei 20 numeri in ordine senza oro e doppio oro in quanto questi possono fare statistica a parte.
Chiaro ognuno lo usa secondo le proprie esigenze.

Per spaziolight, i parametri sono 4 anzichè 3 del vbscript
1 = Numero ID o Progressivo
2 = Indice Annuale
3 = Data estrazione con separatore "/"
4 = colonne separate da ";" punto e virgola
il tutto in formato csv.

Quindi da spaziometria con lo script in questione scrivi il parametro mancante con carattere separatore ";" e si scrive l'archivio pornto per essere riconosciuto da spaziolight

Io ho già creato qualcosa così ed è funzionante.
 
Questo è l'esempio dei 20 primi 20 numero da scriversi con i codici DL per spaziolight
Codice:
Sub Main
' file da usare per aggiornare spaziolight 10elotto
   ImpostaArchivio10ELotto(1)
   Dim Nu(20),sFilecsv,sRiga,sFileLocal
   Ini = EstrazioneIniDL ' - 10
   fin = EstrazioneFinDL
   sFileLocal = "C:\Users\....Admin.....\desktop\Mio10elottoSerale.csv" 'mettere il proprio percorso
   Call EliminaFile(sFileLocal)
   sFilecsv = GetDirectoryAppData & "temp\Analisi.csv"
   Call EliminaFile(sFilecsv)
   ' scrive i titoli delle colonne nel file csv
   '-------------------------------------
   'sRiga = "Id;IndAn;dataEstrazione;n1;n2;n3;n4;n5;n6;n7;n8;n9;n10;n11;n12;n13;n15;n15;n16;n17;n18;n19;n20"
   'Call ScriviFile(sFilecsv,sRiga,False)
   '-------------------------------------
   For es = Ini To fin
      k = k + 1
      For p = 1 To 20
         Nu(p) = EstrattoDL(es,p)
      Next
      Scrivi k & ";" & IndiceAnnualeDL(es) & ";" & DataEstrazioneDL(es) & ";" & StringaNumeri(Nu,";",1)
      sRiga = k & ";"
      sRiga = sRiga & IndiceAnnualeDL(es) & ";"
      sRiga = sRiga & Replace(DataEstrazioneDL(es),".","/") & ";"
      For x = 1 To 19
         sRiga = sRiga & Nu(x) & ";"
      Next
      sRiga = sRiga & Nu(20)
      Call ScriviFile(sFilecsv,sRiga,False)
      Call ScriviFile(sFileLocal,sRiga,False)
   Next
   Call CloseFileHandle(sFilecsv)
   Call LanciaFile(sFilecsv)
End Sub


Per L'extra dei scaricarli e poi scriverli.

Ciao
 
ciao mike ,
per cresare gli archivi , ho fatto uno script che li scarica dalla rete ,
dal sito Agenzia dogane e monopoli .
l' ho fatto cosi , quello classico ,perche' in spaziometria ,
con i codici FT si possono usare 20 numeri
cosi facendo , cioe integrare oro e doppio ,
posso fare le statisitiche anche di quelli .
altrimnti se uso i codici DL , faccio le statistiche solo del oro .
tu come avresti proceduto
in spaziolitgh , come funziona
hai provato fino a quanti numeri si possono uare con i codici FT
o se usi i codici DL , l' archivio quanto puo' essere lungo .
per modificare gli archivi per renderli compatibili con light , non e difficile .
 
Ultima modifica:
Fabri, i codici DL (non ci sono in spazioLight) si usano solo in spaziometria e qualsiasi script per generare gli archivi si deve fare solo con script di spaziometria.
Poi In SpazioLight Luigi ha copiato tutti i codici FT che possono allacciare qualsiasi archivio con quel formato dei 4 parametri, ma su quanti numeri non sò se c'è un limite.
Il mio file 20 numeri lo allaccia tranquillamente.
Io Penso che il codice FT può allacciare tutti i 90 numeri.
Ciao
 
Il Numero oro 1 può essere identificato con bari 1° estratto e oro 2 con bari 2° estratto
Chiaro che dipende dalle esigenze.
Uno script che usa codici DL può interagire con l'archivio lotto.

esempio

Codice:
Option Explicit
Sub Main
ImpostaArchivio10ELotto(1)
Dim Ini,Fin,IdEstr,P,nu(20),sChrSep,Oro,Oro2
sChrSep = ";"
Ini = EstrazioniArchivioDL - 10
Fin = EstrazioniArchivioDL
Call ScegliRange(Ini,Fin,Ini,Fin)
Scrivi "Archivio 10 e Lotto Serale"
Scrivi "Estrazione inizio........... " & Ini
Scrivi "Estrazione fine............. " & Fin
Scrivi
Call ResetTimer
For IdEstr = Ini To Fin
For P = 1 To 20
nu(P) = EstrattoDL(IdEstr,P)
Next
Oro = NumeroOroDL(IdEstr)
Oro2 = Estratto(IdEstr,BA_,2)
Scrivi DataEstrazioneDL(IdEstr,,,"/") & sChrSep & FormattaStringa(IndiceAnnuale(IdEstr),"000") & sChrSep,1,0
Scrivi StringaNumeri(nu,sChrSep,1),1,0,,1
Scrivi sChrSep & Format2(Oro) & sChrSep & Format2(Oro2),1,,,2
Call AvanzamentoElab(Ini,Fin,IdEstr)
Next
Dim t:t = TempoTrascorso
If MsgBox("Vuoi visualizzare il tempo di elaborazioni dati?",4,"Opzione Output") = vbYes Then Scrivi : Scrivi t
End Sub
 
ciao mi devo scusare ancora ,
avevo interpretato male e capito peggio ,
ma sara l'eta o piu facile la demenza .
ma ritorniamo all' algoritmo per i numeri extra
ma hai usato evebtualmente anche la ruota nazionale nei listati per gli extra
 
No il mio ciclo ruote e 1 to 10 penso che 50 estratti bastano con i ripetuti, ma comunque se non bastassero nel calcolo devono essere presi anche gli estratti di nazionale.
Quindi ero riuscito a fare il ciclo for delle posizioni e ciclo for delle 10 ruote cosi raccolgo i 50 estratti, capisci che se prendo la nazionale come ciclo ruote il calcolo (a livello script) non è corretto, per questo per ora non la conteggio.

Ciao
 
Fabri, visto che sei bravo a prelevare le estrazioni non è che riusciresti a prelevare i 10 estratti del MillionDay.
primi 1- 5 estratti millionday + 6-10 extra Millionday.
a me interesserebbe la colonna da 10 numeri però non ordinata primi 5 + secondi 5 (extra).
con le 2 scritture txt e csv.
Se riesci sarebbe una altra bella chicca.
 
mike ciao, me la cavo , ma senza pretese .
a confrontto , di molti altri ,compreso te . sono a medio livello .
per il millionday , devo veder il sito dove reuperare i dati come da te richiesti,
 
Ciao Fabri, Si !!! io vorrei in archivio con 10 numeri, quindi anche gli extra.
L'importante che siano ordinati 1-5 millionday 6-10 extra.
Vorrei fare statistice sui 10 numeri estratti.
So che gli extra sono partiti dal 16-3-2022 e da questa data che mi interessa far partire l'archivio.
fai quello che puoi.
 

Ultima estrazione Lotto

  • Estrazione del lotto
    venerdì 10 gennaio 2025
    Bari
    40
    61
    11
    86
    37
    Cagliari
    31
    02
    51
    68
    87
    Firenze
    73
    55
    34
    52
    18
    Genova
    11
    40
    27
    82
    20
    Milano
    80
    71
    65
    19
    10
    Napoli
    50
    30
    03
    01
    36
    Palermo
    66
    42
    43
    76
    89
    Roma
    05
    22
    62
    35
    39
    Torino
    17
    58
    62
    86
    69
    Venezia
    43
    89
    14
    04
    40
    Nazionale
    64
    76
    35
    40
    19
    Estrazione Simbolotto
    Bari
    08
    07
    37
    33
    38
Indietro
Alto