Novità

BaseDat.dat

  • Creatore Discussione Creatore Discussione joe
  • Data di inizio Data di inizio
AGGIORNAMENTO ARCHIVIO LOTTO da LottoPython V.4.3

Codice:
Option Explicit
Sub Main
     'Agg_Lotto V.4.3 By Joe *** Archivio LottoPython ***  - 08/02/2026 -
     'Script per Spaziometria By Joe.
     Dim sFileLoc
     Dim nEstrTot,sDataLastEstr,k,r
     Dim sDataEstr,nNumEstr,nSalvate
     Dim b
     Dim sFileBd
     Dim sLink
     Dim Ia,N,sVV,x
     Dim CfrData
     Dim Vecchio,Nuovo
     Dim V
     Dim E
     sLink = "https://raw.githubusercontent.com/Lottopython/exstrazionales/refs/heads/main/Estrazionales%20lotto.txt"
     b = False : N = False
     nSalvate = 0
     sFileBd = GetDirectoryAppData & "BaseDati.dat"
     Scrivi sFileBd,1,,,2 : Scrivi
     sFileLoc = GetDirectoryAppData & "ArcTlv\"
     Messaggio "Agg_Lotto V.4.3 By Joe *** Archivio LottoPython ***"
     If CreaDirectory(sFileLoc) Then
          sFileLoc = sFileLoc & "Archivio.txt"
          If DownloadFromWeb(sLink,sFileLoc) Then
               nEstrTot = EstrazioniArchivio
               sDataLastEstr = DataEstrazione(nEstrTot,,,"/")
               Vecchio = Right(sDataLastEstr,4)
               Ia = IndiceAnnuale(nEstrTot)
               If nEstrTot = 0 Then CfrData = "01/01/1871" : b = True : Ia = 0
               ReDim aRighe(0)
               Call LeggiRigheFileDiTesto(sFileLoc,aRighe)
               For k = 0 To UBound(aRighe) Step 12
                    AvanzamentoElab 1,UBound(aRighe),k
                    ReDim aV(0)
                    If Len(aRighe(k)) = 53 Then
                         sDataEstr = Left(aRighe(k),2) & "/" & Mid(aRighe(k),4,2) & "/" & Mid(aRighe(k),7,4)
                         ReDim aEstr(11,5)
                         For r = 0 To 10
                              sVV = Right(aRighe(k + r),27)
                              V = Split(sVV,"   ") '4 Spazi
                              For x = 0 To 4
                                   aEstr(r + 1,x + 1) = V(x)
                              Next
                         Next
                         Nuovo = Right(sDataEstr,4)
                         If b Then
                              If Nuovo <> Vecchio Then Ia = 0 : Vecchio = Nuovo
                              If sDataEstr <> sDataLastEstr Then
                                   Ia = Ia + 1
                                   nNumEstr = Ia
                                   If nNumEstr > 0 And IsDate(sDataEstr) Then
                                        If CfrData <> sDataEstr Then
                                             If SalvaEstrazione(aEstr,sDataEstr,nNumEstr,sFileBd) Then
                                                  CfrData = sDataEstr
                                                  nSalvate = nSalvate + 1
                                             End If
                                        Else
                                             ColoreTesto 2
                                             Scrivi "ATTENZIONE " & sDataEstr & " ERRORE NELLE DATE",True
                                             ColoreTesto 0
                                        End If
                                   End If
                              End If
                         End If
                         If sDataEstr = sDataLastEstr Then b = True
                    Else
                         Scrivi "Errore nel Download"
                    End If
               Next
               If nSalvate > 0 Then AllineaArchivi
          Else
               Scrivi "Errore nella creazione Dei File Necessari"
          End If
          Call Scrivi("Aggiornamento Lotto V.4.3 By Joe *** Utilizza Archivio lottoPython ***",1)
          Call Scrivi("")
          Call Scrivi("Estrazioni trovate in Archivio Remoto " & QuantitaEstrazioniInFile(sFileBd))
          Call Scrivi("")
          Call Scrivi("Archivio Locale Aggiornato all' Estrazione N° " & IndiceAnnuale(EstrazioniArchivio) & " del " & DataEstrazione(EstrazioneFin,,,"/"))
          Call Scrivi("")
          Call Scrivi("- Sono state Aggiunte " & nSalvate & " Estrazioni -",1,,,1)
          Call Scrivi("")
     End If
End Sub

Questo script è in grado di importare TUTTE le attuali 10800 Estrazioni !

GRAZIE all' ARCHIVIO remoto che LottoPython ha reso disponibile per tutti.

:) Buona domenica a tutte/i.
 
Ultima modifica:
Questo script effettua il download dell' ARCHIVIO COMPLETO SUPERENALOTTO, che LottoPython ha reso disponibile su GitHub.

Codice:
Sub Main
   'ARCHIVIO_SUPERENALOTTO x Spaziometria
   'Script LuigiB-LottoPython-Joe V.4.3 del 12/02/2026
   Dim sPercorsoLocale,sFileLocale
   sPercorsoLocale = GetDirectoryTemp
   CreaDirectory(sPercorsoLocale)
   sFileLocale = sPercorsoLocale & "superenalotto_completo.csv"
   Call EliminaFile(sFileLocale)
   Dim sFileBaseDati : sFileBaseDati = GetDirectoryAppData & "BaseDatiSuperEna.Dat"
   Dim eDate,eClock,sPercorsosFileBaseDatiBackup,sFileBaseDatiBackup
   Call DateTimeTest(eDate) : Call ClockTimeTest(eClock)
   sPercorsosFileBaseDatiBackup = GetDirectoryAppData & "Archivio SuperEnalotto\Backup\dat\"
   CreaDirectory(sPercorsosFileBaseDatiBackup)
   sFileBaseDatiBackup = sPercorsosFileBaseDatiBackup & "BaseDatiSuperEna.Dat.backup_Del_" & eDate & "_ore_" & eClock & ".bak"
   If FileEsistente(sFileBaseDati) Then
      Call CopiaFile(sFileBaseDati,sFileBaseDatiBackup)
   End If
   Dim sUrlCompleto,sScelta
 
         sUrlCompleto = "https://raw.githubusercontent.com/Lottopython/SUPERENALOTTO-SPAZIOMETRIA/refs/heads/main/superenalotto.txt"
         Call Messaggio("Scelto download da GitHub (predefinito).")
 
   Dim StrMessInfo
   StrMessInfo = MsgBox("Ricreare l'intero archivio dal 1997?" & vbCrLf & _
                        "Verranno eliminate tutte le estrazioni esistenti.",vbQuestion + vbYesNo,"Conferma Ricreazione")
   If StrMessInfo = vbNo Then
      MsgBox "Operazione annullata dall'utente.",vbInformation
      Exit Sub
   End If
   Call EliminaFile(sFileBaseDati)
   If Not DownloadFromWeb(sUrlCompleto,sFileLocale) Then
      MsgBox "Errore nel download del file da:" & vbCrLf & sUrlCompleto,vbCritical,"Errore Download"
      Exit Sub
   End If
   If Not FileEsistente(sFileLocale) Then
      MsgBox "File temporaneo non trovato dopo il download.",vbCritical
      Exit Sub
   End If
   Dim aRighe,k,sNumEstrTrovate
   sNumEstrTrovate = 0
   If LeggiRigheFileDiTesto(sFileLocale,aRighe) Then
      For k = 0 To UBound(aRighe)
         If ScriptInterrotto Then Exit For
         Dim sRiga : sRiga = Trim(aRighe(k))
         If sRiga <> "" Then
            Dim aCampi : ReDim aCampi(0)
            Call SplitByChar(sRiga,",",aCampi)
            If UBound(aCampi) = 9 Then
               Dim sID,sData
               sID = Trim(aCampi(0))
               sData = Trim(aCampi(1))
               If Len(sData) = 10 And Mid(sData,3,1) = "/" And Mid(sData,6,1) = "/" Then
                  Dim nGiorno,nMese,nAnno
                  On Error Resume Next
                  nGiorno = Int(Split(sData,"/")(0))
                  nMese = Int(Split(sData,"/")(1))
                  nAnno = Int(Split(sData,"/")(2))
                  On Error GoTo 0
                  If nGiorno >= 1 And nGiorno <= 31 And _
                     nMese >= 1 And nMese <= 12 And _
                     nAnno >= 1997 And nAnno <= Year(Now) Then
                     Dim bValida : bValida = True
                     Dim i
                     For i = 2 To 9
                        Dim nValore
                        nValore = Int(Trim(aCampi(i)))
                        If nValore < 0 Or nValore > 90 Then
                           bValida = False
                           Exit For
                        End If
                     Next
                     If bValida Then
                        Dim aNumeri
                        ReDim aNumeri(8)
                        For i = 1 To 6
                           aNumeri(i) = Int(Trim(aCampi(i + 1)))
                        Next
                        aNumeri(7) = Int(Trim(aCampi(8)))
                        aNumeri(8) = Int(Trim(aCampi(9)))
                        Dim nID : nID = 0
                        On Error Resume Next
                        nID = CLng(sID)
                        On Error GoTo 0
                        Call SalvaEstrazioneSE(aNumeri,sData,nID,sFileBaseDati)
                        sNumEstrTrovate = sNumEstrTrovate + 1
                        If(sNumEstrTrovate Mod 500) = 0 Then
                           Call Messaggio("Estrazioni elaborate: " & sNumEstrTrovate)
                        End If
                     End If
                  End If
               End If
            End If
         End If
      Next
   End If
   Call EliminaFile(sFileLocale)
   Call MsgBox("Aggiornamento completato con successo!" & vbCrLf & _
               "Estrazioni totali importate: " & sNumEstrTrovate,vbInformation,"ARCHIVIO SUPERENALOTTO")
End Sub
Function DateTimeTest(eDate)
   Dim DD,MM,YYYY : DD = Day(Now) : MM = Month(Now) : YYYY = Year(Now)
   eDate = YYYY & Right("0" & MM,2) & Right("0" & DD,2)
End Function
Function ClockTimeTest(eClock)
   Dim HH,MM,SS : HH = Hour(Now) : MM = Minute(Now) : SS = Second(Now)
   eClock = Right("0" & HH,2) & Right("0" & MM,2) & Right("0" & SS,2)
End Function

:)

PS: NON MODIFICA il numero-progressivo-estrazione che pertanto sostituisce l'indice annuale.
 
Ultima modifica:
Buon San Valentino a tutte/i.

Ho aggiornato alla data odierna l' Archivio Lotto presente al primo messaggio.

:)
 
Questo script effettua il download dell' ARCHIVIO COMPLETO SUPERENALOTTO, che LottoPython ha reso disponibile su GitHub.

Codice:
Sub Main
   'ARCHIVIO_SUPERENALOTTO x Spaziometria
   'Script LuigiB-LottoPython-Joe V.4.3 del 12/02/2026
   Dim sPercorsoLocale,sFileLocale
   sPercorsoLocale = GetDirectoryTemp
   CreaDirectory(sPercorsoLocale)
   sFileLocale = sPercorsoLocale & "superenalotto_completo.csv"
   Call EliminaFile(sFileLocale)
   Dim sFileBaseDati : sFileBaseDati = GetDirectoryAppData & "BaseDatiSuperEna.Dat"
   Dim eDate,eClock,sPercorsosFileBaseDatiBackup,sFileBaseDatiBackup
   Call DateTimeTest(eDate) : Call ClockTimeTest(eClock)
   sPercorsosFileBaseDatiBackup = GetDirectoryAppData & "Archivio SuperEnalotto\Backup\dat\"
   CreaDirectory(sPercorsosFileBaseDatiBackup)
   sFileBaseDatiBackup = sPercorsosFileBaseDatiBackup & "BaseDatiSuperEna.Dat.backup_Del_" & eDate & "_ore_" & eClock & ".bak"
   If FileEsistente(sFileBaseDati) Then
      Call CopiaFile(sFileBaseDati,sFileBaseDatiBackup)
   End If
   Dim sUrlCompleto,sScelta
 
         sUrlCompleto = "https://raw.githubusercontent.com/Lottopython/SUPERENALOTTO-SPAZIOMETRIA/refs/heads/main/superenalotto.txt"
         Call Messaggio("Scelto download da GitHub (predefinito).")
 
   Dim StrMessInfo
   StrMessInfo = MsgBox("Ricreare l'intero archivio dal 1997?" & vbCrLf & _
                        "Verranno eliminate tutte le estrazioni esistenti.",vbQuestion + vbYesNo,"Conferma Ricreazione")
   If StrMessInfo = vbNo Then
      MsgBox "Operazione annullata dall'utente.",vbInformation
      Exit Sub
   End If
   Call EliminaFile(sFileBaseDati)
   If Not DownloadFromWeb(sUrlCompleto,sFileLocale) Then
      MsgBox "Errore nel download del file da:" & vbCrLf & sUrlCompleto,vbCritical,"Errore Download"
      Exit Sub
   End If
   If Not FileEsistente(sFileLocale) Then
      MsgBox "File temporaneo non trovato dopo il download.",vbCritical
      Exit Sub
   End If
   Dim aRighe,k,sNumEstrTrovate
   sNumEstrTrovate = 0
   If LeggiRigheFileDiTesto(sFileLocale,aRighe) Then
      For k = 0 To UBound(aRighe)
         If ScriptInterrotto Then Exit For
         Dim sRiga : sRiga = Trim(aRighe(k))
         If sRiga <> "" Then
            Dim aCampi : ReDim aCampi(0)
            Call SplitByChar(sRiga,",",aCampi)
            If UBound(aCampi) = 9 Then
               Dim sID,sData
               sID = Trim(aCampi(0))
               sData = Trim(aCampi(1))
               If Len(sData) = 10 And Mid(sData,3,1) = "/" And Mid(sData,6,1) = "/" Then
                  Dim nGiorno,nMese,nAnno
                  On Error Resume Next
                  nGiorno = Int(Split(sData,"/")(0))
                  nMese = Int(Split(sData,"/")(1))
                  nAnno = Int(Split(sData,"/")(2))
                  On Error GoTo 0
                  If nGiorno >= 1 And nGiorno <= 31 And _
                     nMese >= 1 And nMese <= 12 And _
                     nAnno >= 1997 And nAnno <= Year(Now) Then
                     Dim bValida : bValida = True
                     Dim i
                     For i = 2 To 9
                        Dim nValore
                        nValore = Int(Trim(aCampi(i)))
                        If nValore < 0 Or nValore > 90 Then
                           bValida = False
                           Exit For
                        End If
                     Next
                     If bValida Then
                        Dim aNumeri
                        ReDim aNumeri(8)
                        For i = 1 To 6
                           aNumeri(i) = Int(Trim(aCampi(i + 1)))
                        Next
                        aNumeri(7) = Int(Trim(aCampi(8)))
                        aNumeri(8) = Int(Trim(aCampi(9)))
                        Dim nID : nID = 0
                        On Error Resume Next
                        nID = CLng(sID)
                        On Error GoTo 0
                        Call SalvaEstrazioneSE(aNumeri,sData,nID,sFileBaseDati)
                        sNumEstrTrovate = sNumEstrTrovate + 1
                        If(sNumEstrTrovate Mod 500) = 0 Then
                           Call Messaggio("Estrazioni elaborate: " & sNumEstrTrovate)
                        End If
                     End If
                  End If
               End If
            End If
         End If
      Next
   End If
   Call EliminaFile(sFileLocale)
   Call MsgBox("Aggiornamento completato con successo!" & vbCrLf & _
               "Estrazioni totali importate: " & sNumEstrTrovate,vbInformation,"ARCHIVIO SUPERENALOTTO")
End Sub
Function DateTimeTest(eDate)
   Dim DD,MM,YYYY : DD = Day(Now) : MM = Month(Now) : YYYY = Year(Now)
   eDate = YYYY & Right("0" & MM,2) & Right("0" & DD,2)
End Function
Function ClockTimeTest(eClock)
   Dim HH,MM,SS : HH = Hour(Now) : MM = Minute(Now) : SS = Second(Now)
   eClock = Right("0" & HH,2) & Right("0" & MM,2) & Right("0" & SS,2)
End Function

:)

PS: NON MODIFICA il numero-progressivo-estrazione che pertanto sostituisce l'indice annuale.
buonasera Joe ,senti per cortesia mi puoi aiutare ad aggiornare spaziometria sono rimasto all'ultima estrazione in data 29112025. ho provato con lo script ma mi da errore , per cortesia puoi aiutarmi ?? grazie Antonio .
 
Ciao Antonio.

Ho provato, adesso, i 2 script presenti poco sopra e funzionano tutti e 2.

Quello del Lotto ha caricato le ultime 7 estrazioni che avevo cancellato.

Quello per il SuperEnalotto ha caricato estrazioni 4146 Estrazioni.

Sono visibili nel Tabellone Analitico (per il SuperEnalotto) fino al 14/02/2026.

Codice:
Aggiornamento Lotto V.4.3 By Joe *** Utilizza Archivio lottoPython ***

Estrazioni trovate in Archivio Remoto 10804

Archivio Locale Aggiornato all' Estrazione N° 25 del 14/02/2026

- Sono state Aggiunte 7 Estrazioni -

Dovresti farmi sapere che versione di spaziometria e di sistema operativo hai

e quale errore ottieni provando ed eseguire lo script.

:)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 17 febbraio 2026
    Bari
    40
    72
    47
    39
    63
    Cagliari
    03
    66
    47
    27
    35
    Firenze
    14
    62
    53
    08
    51
    Genova
    55
    12
    81
    52
    04
    Milano
    41
    31
    55
    23
    59
    Napoli
    30
    09
    38
    14
    50
    Palermo
    19
    86
    40
    32
    07
    Roma
    65
    88
    51
    42
    41
    Torino
    10
    06
    34
    84
    81
    Venezia
    06
    25
    82
    24
    52
    Nazionale
    10
    74
    04
    29
    88
    Estrazione Simbolotto
    Cagliari
    01
    41
    21
    44
    28

Ultimi Messaggi

Indietro
Alto