Novità

Qualcuno riesce?

Marcorun

Advanced Member >GOLD<
Mi servirebbe uno script che restituisca una tabella con il ritardo che avevano i numeri estratti.
possibilmente su un range di 20 estrazioni e che potesse girare su archivio FT.
Grazie!
(Se qualcuno ha qualcosa di simile x il lotto, forse riesco a trasformarlo x archivio FT)
(y)
 
Personalmente non so fare gli script e, tantomeno, so cosa sia un archivio FT
e non so nemmeno se ho capito cosa voleva
Proprio per questo :giggle: ho provato a fare una macro per Excel (come suona bene! Ho provato. In realtà mi sono limitato a chiedere una macro alla AI su quanto avevo capito io (orrrrrore!)
Non so se le può servire, non ho neanche controllato se i risultati sono corretti. Ma, magari, il mio ntervento smuove i sapientoni che nascondono la testa sotto la sabbia. A che serve un Forum se neanche rispondete?

Sub RitardiOrizzontali()
Dim wsArchivio As Worksheet
Dim wsRisultati As Worksheet
Dim ultimaRiga As Long, i As Long, j As Long, k As Long

' Imposta i fogli di lavoro
Set wsArchivio = ThisWorkbook.Sheets("Archivio")

' Crea nuovo foglio per i risultati se non esiste
On Error Resume Next
Set wsRisultati = ThisWorkbook.Sheets("Ritardi_Estratti")
On Error GoTo 0

If wsRisultati Is Nothing Then
Set wsRisultati = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
wsRisultati.Name = "Ritardi_Estratti"
Else
wsRisultati.Cells.Clear
End If

' Trova l'ultima riga con dati
ultimaRiga = wsArchivio.Cells(wsArchivio.Rows.Count, "A").End(xlUp).Row

' Array delle ruote con le loro colonne
Dim ruote As Variant
ruote = Array("Bari|D:H", "Cagliari|I:M", "Firenze|N:R", "Genova|S:W", "Milano|X:AB", _
"Napoli|AC:AG", "Palermo|AH:AL", "Roma|AM:AQ", "Torino|AR:AV", "Venezia|AW:BA", "Nazionale|BB:BF")

' Intestazioni prima riga
wsRisultati.Cells(1, 1) = "Data"
Dim colHeader As Long
colHeader = 2

For r = 0 To UBound(ruote)
Dim ruotaNome As String
ruotaNome = Split(ruote(r), "|")(0)

For n = 1 To 5
wsRisultati.Cells(1, colHeader) = ruotaNome & " N" & n
wsRisultati.Cells(1, colHeader + 1) = "Rit."
colHeader = colHeader + 2
Next n

' Aggiungi colonna separatrice dopo ogni ruota (tranne l'ultima)
If r < UBound(ruote) Then
wsRisultati.Cells(1, colHeader) = ""
colHeader = colHeader + 1
End If
Next r

' Righe dati
Dim rigaRisultati As Long
rigaRisultati = 2

' Per le ultime 20 estrazioni
For i = ultimaRiga To ultimaRiga - 19 Step -1
' Scrivi la data
wsRisultati.Cells(rigaRisultati, 1) = wsArchivio.Cells(i, 3).Value

' Colonna di partenza per i numeri e ritardi
Dim colRisultati As Long
colRisultati = 2

' Per ogni ruota
For r = 0 To UBound(ruote)
Dim colInizio As String, colFine As String
colInizio = Split(Split(ruote(r), "|")(1), ":")(0)
colFine = Split(Split(ruote(r), "|")(1), ":")(1)

' Per ogni numero nella ruota
For col = Range(colInizio & "1").Column To Range(colFine & "1").Column
Dim numeroEstratto As Long
numeroEstratto = wsArchivio.Cells(i, col).Value

' Se è un numero valido
If numeroEstratto > 0 Then
' Calcola il ritardo
Dim ritardo As Long
ritardo = 0

' Controlla le estrazioni precedenti
For j = i - 1 To 9 Step -1
Dim trovato As Boolean
trovato = False

' Cerca il numero nella stessa ruota
For k = Range(colInizio & "1").Column To Range(colFine & "1").Column
If wsArchivio.Cells(j, k).Value = numeroEstratto Then
trovato = True
Exit For
End If
Next k

If trovato Then
Exit For
Else
ritardo = ritardo + 1
End If
Next j

' Scrivi numero e ritardo
wsRisultati.Cells(rigaRisultati, colRisultati) = numeroEstratto
wsRisultati.Cells(rigaRisultati, colRisultati + 1) = ritardo
End If

colRisultati = colRisultati + 2
Next col

' Aggiungi colonna separatrice dopo ogni ruota (tranne l'ultima)
If r < UBound(ruote) Then
wsRisultati.Cells(rigaRisultati, colRisultati) = ""
colRisultati = colRisultati + 1
End If
Next r

rigaRisultati = rigaRisultati + 1
Next i

' Formattazione
With wsRisultati.Range("A1").CurrentRegion
.Borders.LineStyle = xlContinuous
.HorizontalAlignment = xlCenter
With .Rows(1)
.Font.Bold = True
.Interior.ColorIndex = 15
End With

' Colora le colonne separatrici
Dim sepCol As Long
sepCol = 12 ' Prima colonna separatrice (dopo i primi 5 numeri e ritardi di Bari)
Do While sepCol <= .Columns.Count
.Columns(sepCol).Interior.ColorIndex = 15
sepCol = sepCol + 11 ' Prossima colonna separatrice (5 numeri * 2 colonne + 1 separatore = 11)
Loop
End With

' Adatta larghezza colonne
wsRisultati.Columns.AutoFit

' Imposta una larghezza minima per le colonne separatrici
sepCol = 12
Do While sepCol <= wsRisultati.Range("A1").CurrentRegion.Columns.Count
wsRisultati.Columns(sepCol).ColumnWidth = 2
sepCol = sepCol + 11
Loop

MsgBox "Analisi completata! I risultati sono nel foglio 'Ritardi_Estratti'."
End Sub

Il risultato della macro:

1739481258362.png
Salutammo
Baciccia
 
Ciao.....sei proprio bravo...era proprio quello che intendevo.
Peccato che di macro non so assolutamente niente, gli script a volte riesco ad aggiustarli x quello che voglio.
Come ben dici tu, si è qui anche x condividere, e di gente preparata c'è ne tanta (tipo il grande MIKE 58,che ogni tanto mi da qualche dritta),ma a volte certe richieste sembrano troppo banali (x gli esperti) che non degnano di attenzione.
GRAZIE tante.
P.S. L'archivio FT si imposta all'inizio di uno script x cercare un file di testo salvato , così che si può usare il tutto x varie lotterie.
Nel mio caso l'avrei usato x il million day ,che ultimamente mi attrae.👋
 
La AI m dice: No, hai ragione - mi scuso per l'errore. Il ritardo del ritardo è in realtà il numero di estrazioni che passa prima che un ritardo si ripresenti uguale.

Prima aveva detto è la differenza, in valore assoluto, tra gli ultimi due ritardi (che mi prendesse in giro? A volte lo sospetto)

Se la definizione è corretta la macro l'ho già fatta

1739547707739.png
Baciccia
 
Credo che sia proprio così,il problema però è sempre lo stesso.....Macro tabù...script forse!
Sei molto gentile Grazie!
 
Mi servirebbe uno script che restituisca una tabella con il ritardo che avevano i numeri estratti.
possibilmente su un range di 20 estrazioni e che potesse girare su archivio FT.
Grazie!
(Se qualcuno ha qualcosa di simile x il lotto, forse riesco a trasformarlo x archivio FT)
(y)
E' un lavoro molto più ampio del bravo Mike58.
Vedi tu come adattarlo al tuo archivio, adesso opererebbe su un archivio x MillionDay (55 numeri)

Codice:
Sub Main
     Dim nu(5),T,V,aN(55)
     Dim sFileBd
     Dim sChrSep
     sChrSep = ","
     sFileBd = ScegliFile("C:\Mike58\Desktop\.txt") ' Percorso FileTesto
     'Call ApriBaseDatiFT(sFileBd,6,sChrSep,90) ' x Sivicetutto
     'Call ApriBaseDatiFT(sFileBd,5,sChrSep,40) ' x VinciCasa
     Call ApriBaseDatiFT(sFileBd,5,sChrSep,55) ' x MillionDay
     Ini = 1' EstrazioniArchivioFT - 20
     fin = EstrazioniArchivioFT - 1
     fine = EstrazioniArchivioFT
     ReDim T(57)'--------------------------------------------------------
     T(1) = "info data"
     T(2) = "Estratti"
     For x = 1 To 55
          T(x + 2) = Format2(x)
     Next
     Call InitTabella(T)
     For es = Ini To fine
          'For r = 1 To 1
          ReDim V(57)'------------------------------------------------------
          V(1) = GetInfoEstrazioneFT(es)
          V(2) = StringaEstrattiFT(es)
          For xx = 1 To 55
               aN(xx) = ""
               'aN(xx) = xx
               For p = 1 To 5
                    nu(p) = EstrattoFT(es,p)
                    If nu(p) = xx Then aN(xx) = aN(xx) & nu(p)
                    If nu(p) = xx Then kk = kk + 1
                    V(xx + 2) = aN(xx)
               Next
          Next
          Call AddRigaTabella(V)
     Next
     ReDim VV(57)
     For xxx = 1 To 55
          aa = EstrattoFrequenzaFT(xxx,Ini,fine)
          VV(1) = "Presenze"
          VV(xxx + 2) = aa
     Next
     Call AddRigaTabella(VV,3)
     ReDim VVV(57)
     For xxx = 1 To 55
          aa = EstrattoRitardoFT(xxx,Ini,fine)
          VVV(1) = "Ritardo"
          VVV(xxx + 2) = aa
     Next
     Call AddRigaTabella(VVV,6)
     ReDim VVVv(57)
     For xxx = 1 To 55
          aa = EstrattoStoricoFT(xxx,Ini,fine)
          VVVv(1) = "Rit Storico"
          VVVv(xxx + 2) = aa
     Next
     Call AddRigaTabella(VVVv,7)
     Call SetTableWidth("100%")
     CreaTabella
     For y = 1 To 40
          n = EstrattoFrequenzaFT(y,Ini,fin)
          m = EstrattoRitardoFT(y,Ini,fin)
          o = EstrattoStoricoFT(y,Ini,fin)
          If n > 0 And m = o Then
               kn = kn + 1
               ReDim Preserve aNum(kn)
               aNum(kn) = y
               ReDim Preserve aRit(kn)
               aRit(kn) = m
               Call VerificaEsitoFT(aNum,fine,1,1,esito,,es1)
          End If
     Next
     Scrivi "Numeri per Gioco  : " & StringaNumeri(aNum,,1) & " ( " & kn & " )" & vbTab & esito & vbTab & es1,1
     Scrivi "Numeri in Ritardo : " & StringaNumeri(aRit,,1),1,,,1
End Sub

Saluti
 
Giusto! c'è anche Claudio spesso disponibile che ringrazio tanto.
Lo script gira bene sul mio archivio txt ,ma non vedo i ritardi che avevano gli estratti caduti!
 
Io non lo ho testato, non ho file archivio .txt
Se vuoi modifiche allega l'archivio.
Ciao
Speravo che fossi tu ad intervenire. Grande claudio8. Altrimenti non saprò mai se la macro che ha fatto la AI dà i risultati corretti o no.
In realtà ho due macro, concordano quasi su nulla.
Poi ne ho una terza che mi dà questo:
1739560619368.png

Ma come faccio a sapere se è corretta o no? In attesa del TXT per controllare
Ti saluto
Baciccia
 
Ciao scusa Baci ma vi è un 88 ^ a ritardo zero !

Vedi l'allegato 2297559
A Ritardo 0, ci sono gli ultimi 5 estratti. Essendo appena usciti hanno azzerato i loro ritardi

Come al lotto:

1739561469476.png

Il vero problema è che non ho la più pallida idea se l'archivio è corretto, non ho trovato un archivio completo in TXT, ho usato (acc. non ricordo cosa) per costruirlo da pezzi presi un po' qua e un po' là.
Se verrà pubblicato il TXT potrò controllare (se me ne ricordo)
Ho scoperto adesso che in una stessa data vi sono più estrazioni (esperto fai da te di Million Day).
Ad esempio nel mio archivio ci sono due estrazioni il 29/01/2025
1739562976286.png

Mentre nel file TXT postato ce ne sono 4:

1739563134238.png

Internet dice questo:
Le estrazioni MillionDay avvengono ogni giorno alle ore 13:00 (estrazione diurna) e alle 20:30 (estrazione serale)
Da dove escono le due in più sul file TXT?

Devo rivedere le macro la AI avrà considerato che le estraioni giornaliere sono due?

Ciao
Baciccia
 

Allegati

  • 1739562872373.png
    1739562872373.png
    8,5 KB · Visite: 1
  • 1739562930596.png
    1739562930596.png
    3,6 KB · Visite: 1
Ultima modifica:
Sono le extra.....è un archivio modificato....x il gioco delle estrazioni anche extra....le ho messe una dopo l'altra....
 
Perdonami : sono numeri estratti che vanno da 1 a 55

trovato

l'88 è il concorso
che è finito negli estratti, una svista.


1739563246192.png
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 08 aprile 2025
    Bari
    23
    43
    18
    70
    32
    Cagliari
    68
    86
    69
    48
    67
    Firenze
    35
    38
    72
    33
    51
    Genova
    88
    74
    80
    84
    61
    Milano
    58
    44
    77
    29
    21
    Napoli
    50
    45
    37
    16
    27
    Palermo
    89
    26
    15
    28
    75
    Roma
    42
    46
    82
    48
    31
    Torino
    08
    75
    01
    42
    36
    Venezia
    57
    40
    61
    17
    02
    Nazionale
    38
    05
    58
    17
    15
    Estrazione Simbolotto
    Genova
    11
    34
    03
    35
    19

Ultimi Messaggi

Indietro
Alto