Novità

regalino

genios

Advanced Member >PLATINUM<
Codice:
Sub Main()
    Dim ruota,pos,es,numero,ultimaEstrazione,estrazioneIniziale,estrazioneFinale
    Dim numeriRicerca(5),posizioni(5)
    Dim i,j,n,posIndex
    Dim conteggioNumeri(90),risultato(9,10)
    Dim valore
    Dim parole(150),colori(150),grassetti(150),indice,valoreReale
    Dim estratti(5),estrattiPrecedenti(5)
    Dim coloreRosso,coloreNero
    Dim coloraRossoPrecedenti(5),coloraRossoCorrenti(5)

    coloreRosso = vbRed
    coloreNero = vbBlack

    ruota = 5
    Scrivi "Ruota:(" & ruota & ")",True
    Scrivi

    ultimaEstrazione = EstrazioneFin()

    ' Intestazione allineata ai valori
    Scrivi "           0000000001 1111111112 2222222223 3333333334 4444444445 5555555556 6666666667 7777777778 8888888889",True
    Scrivi "           1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890",True
    Scrivi

    ' Inizializza estratti precedenti a zero
    For i = 1 To 5
        estrattiPrecedenti(i) = 0
    Next

    For k = 29 To 0 Step - 1
        estrazioneIniziale = ultimaEstrazione - k

        ' Recupera i numeri estratti per l'estrazione corrente
        For i = 1 To 5
            numeriRicerca(i) = Estratto(estrazioneIniziale,ruota,i)
        Next

        ' Salva gli estratti da visualizzare alla fine
        For i = 1 To 5
            estratti(i) = numeriRicerca(i)
        Next

        estrazioneFinale = estrazioneIniziale - 2900

        For n = 1 To 90
            conteggioNumeri(n) = 0
        Next

        ' Calcola il conteggio dei numeri nelle estrazioni
        For i = 1 To 5
            Dim contatoreOccorrenze
            contatoreOccorrenze = 0

            For es = estrazioneIniziale To estrazioneFinale Step - 1
                numero = Estratto(es,ruota,i)
                If numero = numeriRicerca(i) Then
                    contatoreOccorrenze = contatoreOccorrenze + 1

                    ' Calcolo per la decina della spia
                    Dim decinaSpia
                    decinaSpia = Int((numeriRicerca(i) - 1) / 10) ' Calcola la decina della spia

                    ' Verifica la posizione della spia
                    Dim posSpia
                    posSpia = i

                    ' Conta tutti i numeri appartenenti alla decina della spia nelle successive 12 estrazioni
                    For j = 1 To 12
                        If(es + j) <= estrazioneIniziale Then
                            For posIndex = 1 To 5
                                numero = Estratto(es + j,ruota,posIndex)
                                If numero > 0 And numero <= 90 Then
                                    ' Verifica se il numero appartiene alla stessa decina della spia
                                    If Int((numero - 1) / 10) = decinaSpia Then
                                        ' Controlla se la posizione è valida per la spia
                                        Dim posVerifica
                                        posVerifica =(posSpia + j - 1) Mod 5 + 1
                                        If posVerifica = posIndex Or posVerifica =((posIndex Mod 5) + 1) Then
                                            conteggioNumeri(numero) = conteggioNumeri(numero) + 1
                                        End If
                                    End If
                                End If
                            Next
                        End If
                    Next
                End If

                If contatoreOccorrenze >= 12 Then Exit For
            Next
        Next

        For i = 0 To 8
            For j = 1 To 10
                risultato(i,j) = conteggioNumeri(i * 10 + j)
            Next
        Next

        indice = 0
        parole(0) = DataEstrazione(estrazioneIniziale) & " " ' Aggiungi la data con uno spazio all'inizio
        colori(0) = coloreNero
        grassetti(0) = True
        indice = 1 ' Partiamo dall'indice 1 per i valori

        ' Ciclo per la creazione delle parole formattate e colorate
        For i = 0 To 8 ' Gruppi di 10 numeri
            For j = 1 To 10 ' Colonne
                valore = risultato(i,j)
                valoreReale = i * 10 + j ' Questo è il valore numerico che stiamo considerando (es. 1-90)

                If valore >= 10 Then
                    valore = Chr(65 +(valore - 10)) ' Converte valori >= 10 in A, B, etc.
                ElseIf valore = 0 Then
                    valore = "*" ' Sostituisce lo zero con un asterisco
                End If

                ' Gestione della colorazione tenendo conto degli spazi e dei valori alfanumerici
                If IsInArray(valoreReale,numeriRicerca) Then
                    colori(indice) = coloreRosso
                Else
                    colori(indice) = coloreNero
                End If

                ' Assicurati che valore sia corretto per la visualizzazione
                If IsNumeric(valore) Or valore = "*" Then
                    parole(indice) = FormatSpace(valore,0,False) ' Usa FormatSpace anche per *
                Else
                    parole(indice) = valore ' Aggiungi il valore letterale (A, B, C, ...)
                End If

                grassetti(indice) = True
                indice = indice + 1
            Next

            ' Aggiungi uno spazio ogni 10 numeri, ma senza spazio tra le presenze
            parole(indice) = " " ' Aggiungi lo spazio tra le decine
            colori(indice) = coloreNero
            grassetti(indice) = True
            indice = indice + 1
        Next

        ' Determina quali estratti colorare di rosso per l'estrazione corrente e precedente
        If k < 29 Then ' Solo se non è la prima iterazione
            For i = 1 To 5
                ' Verifica se la decina è la stessa nella stessa posizione estrazionale
                If Int((estratti(i) - 1) / 10) = Int((estrattiPrecedenti(i) - 1) / 10) Then
                    coloraRossoCorrenti(i) = True
                    coloraRossoPrecedenti(i) = True
                Else
                    coloraRossoCorrenti(i) = False
                    coloraRossoPrecedenti(i) = False
                End If
            Next
        End If

        ' Aggiungi gli estratti dell'estrazione corrente alla fine della riga con Format2 e separati da un punto
        For i = 1 To 5
            ' Colorazione per gli estratti dell'estrazione corrente
            If coloraRossoCorrenti(i) Then
                colori(indice) = coloreRosso
            Else
                colori(indice) = coloreNero
            End If

            parole(indice) = Format2(estratti(i)) & "."
            grassetti(indice) = True
            indice = indice + 1
        Next

        ' Memorizza i numeri correnti per la verifica nelle estrazioni successive
        For i = 1 To 5
            estrattiPrecedenti(i) = estratti(i)
        Next

        ' Stampa la riga con la data dell'estrazione, i valori colorati e gli estratti alla fine
        ScriviConColori parole,colori,grassetti
    Next
End Sub

Function IsInArray(valore,arr)
    Dim i
    IsInArray = False
    For i = LBound(arr) To UBound(arr)
        If arr(i) = valore Then
            IsInArray = True
            Exit Function
        End If
    Next
End Function
 
Ciao Genios
attirato dal tuo ottimo Script ho provato a far fare una macro per Excel all'AI. E, seppur ancora da correggere in qualche punto, non sembra male:

1731150780210.png

Vorrei inserirlo nel file che metto a disposizione del Forum, naturalmente se tu non hai nulla in contrario. Ho specificato nel foglio che lo Script l'hai fatto tu, io me ne sono solamente appropriato. Fammi sapere
Ciao
Baciccia
 
Ciao Baci visto che hai "capito" lo script puoi spiegarcelo, grazie.


CHI TACE ACCONSENTE HAHAHAHHAHA
Per fare quello che devi fare basta che tu faccia quello che devi fare. Nel caso non funzioni fai in un altro modo.
E' simile, ma non uguale a lotto7, ma per le spiegazioni attendiamo l'ottimo genius che ne sa decisamente più di me.
Ciao Alien
Baciccia
 
Per fare quello che devi fare basta che tu faccia quello che devi fare ACC........ non so cosa fare.....................hahahahha




e740ec10fcaab0ed6bc97fb9a1cffdeb.gif
 
Altro regalino Madam Tolot
Codice:
Option Explicit

Sub Main
'Madam Tolot
    ' Dichiarazione delle variabili
    Dim IdEstCorrente,IdEstSuccessivo
    Dim DataCorrente,EstrattiCorrente,DataSuccessiva,EstrattiSuccessiva
    Dim NumeroCorrente,NumeroSuccessivo
    Dim DecinaCorrente,UnitaCorrente,DecinaSuccessiva,UnitaSuccessiva
    Dim SommaDecine,SommaUnita
    Dim IdEstRicerca,Trovato,i
    Dim NumeriTrovati
Dim Ruota
Ruota=6
Scrivi " Ruota numero "&" "& Ruota
Scrivi
Scrivi
    ' Inizializziamo l'estrazione corrente
    IdEstCorrente = EstrazioneIni() ' Ottiene il primo ID valido dall'archivio

    Do While IdEstCorrente <= EstrazioneFin() - 1
        ' Imposta l'ID dell'estrazione successiva
        IdEstSuccessivo = IdEstCorrente + 1
        ' Verifica che l'ID successivo sia all'interno dell'intervallo valido
        If IdEstSuccessivo > EstrazioneFin() Then
            Scrivi "Errore: Numero estrazione successiva fuori dal range"
            Exit Do
        End If

        ' Ottieni la data e gli estratti dell'estrazione corrente
        DataCorrente = DataEstrazione(IdEstCorrente)
        EstrattiCorrente = StringaEstratti(IdEstCorrente,Ruota,".",0,0)

        ' Ottieni la data e gli estratti dell'estrazione successiva
        DataSuccessiva = DataEstrazione(IdEstSuccessivo)
        EstrattiSuccessiva = StringaEstratti(IdEstSuccessivo,Ruota,".",0,0)

        ' Otteniamo i numeri della prima posizione delle due estrazioni
        NumeroCorrente = Estratto(IdEstCorrente,Ruota,1,0) ' Prima posizione
        NumeroSuccessivo = Estratto(IdEstSuccessivo,Ruota,1,0) ' Prima posizione

        ' Calcolo delle decine e delle unità
        DecinaCorrente = NumeroCorrente \ 10
        UnitaCorrente = NumeroCorrente Mod 10
        DecinaSuccessiva = NumeroSuccessivo \ 10
        UnitaSuccessiva = NumeroSuccessivo Mod 10

        ' Somma delle decine e delle unità
        SommaDecine = DecinaCorrente + DecinaSuccessiva
        SommaUnita = UnitaCorrente + UnitaSuccessiva

        ' Stampa i risultati
        Scrivi "Data Estrazione:            " & DataCorrente
        Scrivi "ID Estrazione Corrente:      " & IdEstCorrente
        Scrivi "Numero in prima posizione: " & NumeroCorrente
        Scrivi
        Scrivi "Data Estrazione Successiva:   " & DataSuccessiva
        Scrivi "ID Estrazione Successiva:     " & IdEstSuccessivo
        Scrivi "Numero in prima posizione: " & NumeroSuccessivo
        Scrivi
        Scrivi "Somma delle decine: " & SommaDecine
        Scrivi "Somma delle unità: " & SommaUnita
        Scrivi

        ' Iniziamo la ricerca per i nuovi numeri
        IdEstRicerca = IdEstSuccessivo + 1
        Trovato = False
        NumeriTrovati = ""

        ' Cerca fino a trovare uno dei due numeri in tutte le posizioni
        Do While IdEstRicerca <= EstrazioneFin()
            For i = 1 To 5 ' Controlla tutte e cinque le posizioni
                If Estratto(IdEstRicerca,Ruota,i,0) = SommaDecine Then
                    NumeriTrovati = NumeriTrovati & SommaDecine & " "
                    Trovato = True
                ElseIf Estratto(IdEstRicerca,1,i,0) = SommaUnita Then
                    NumeriTrovati = NumeriTrovati & SommaUnita & " "
                    Trovato = True
                End If
            Next
            If Trovato Then Exit Do
            IdEstRicerca = IdEstRicerca + 1
        Loop

        ' Stampa i risultati della ricerca
        If Trovato Then
            Scrivi "Numero trovato dopo " &(IdEstRicerca - IdEstSuccessivo) & " estrazioni: ",False,True,- 1,255
            Scrivi Trim(NumeriTrovati)
        Else
            Scrivi "Nessun numero trovato dopo l'ID " & IdEstSuccessivo & "."
        End If
        Scrivi

        ' Incrementa l'ID dell'estrazione corrente di 9 per saltare alla prossima iterazione
        IdEstCorrente = IdEstCorrente + 9
    Loop
End Sub
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 16 novembre 2024
    Bari
    17
    28
    73
    90
    07
    Cagliari
    41
    07
    61
    17
    06
    Firenze
    24
    88
    48
    02
    16
    Genova
    13
    87
    35
    62
    75
    Milano
    14
    75
    67
    88
    06
    Napoli
    10
    09
    63
    53
    78
    Palermo
    48
    07
    76
    86
    42
    Roma
    77
    75
    06
    14
    29
    Torino
    29
    23
    68
    70
    72
    Venezia
    88
    12
    09
    45
    30
    Nazionale
    73
    21
    67
    02
    84
    Estrazione Simbolotto
    Torino
    28
    33
    23
    03
    31

Ultimi Messaggi

Indietro
Alto