Novità

X magia

i legend

Premium Member
ciao Magia
mi sembra che hai scritto una funzione per raccogliere i dati e suddividerli a secondo di quello che ti serve
se puo esserti utile ti scrivo una versione alternativa cosi puoi confrontarla
non so se è abbastanza veloce ,e se funziona correttamente ma
per favore se hai modo di verificarla dimmi che ne pensi.
P.S: non faccio da molto tempo listati
Ciao
Codice:
Option Explicit
' verificare che lo script restituisca dati esatti
' sub per raccolta dati in una matrice in base al filtro richiesto
Sub Main
    Dim i,F,sRic,M,sum,IdE ' variabili contatori e stringhe
    Dim nClass:nClass = 30 ' classe della colonna casuale
    Dim PMin:PMin=4  ' estremo i deciso da utente =filtro
    Dim Pmax:Pmax=4   'estremo s deciso da utente = filtro
    Dim aVric:aVric = Array("Nessuna Selezione","Decina","Cadenza","Figura")' array filtri filtri
    Dim iDric:iDric = ScegliOpzioneMenu(aVric,1,"Selezione filtro") ' indice filtro
    If iDric = 0 Then Exit Sub ' se filtro errato  esce dalla sub
    Dim uB,lB ' vaiabili limiti array
    Select Case iDric:Case 1:uB = 0:lB = 8:Case 2:uB = 0:lB = 9:Case 3:    uB = 1:lB = 9:End Select ' stabilisco valore limite inferiore e superiore del filtr0
        ReDim aRic(lB,3)
        '--------------------------------------------
        ReDim aEstr(0)
        Call GetColonnaCasuale(nClass,aEstr)
        Scrivi StringaNumeri(aEstr,,True),,,RGB(240,240,240),,,,True
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        ' questo ciclo for è il blocco di raccolta
        For F = uB To lB 'ciclo gli elementi del  filtro
            sRic = "":M = 0:sum = 0 'azzero stringhe e somme per ogni elemento
            For i = 1 To UBound(aEstr)' ciclo l array dei numeri da filtrare
                ' in base al filtro raccolgo i dati
                Select Case iDric
                    ' calcolo i dati
                Case 1: If Decina(aEstr(i)) = F Then sRic = sRic & Format2(aEstr(i)) & ",":sum = sum + aEstr(i):M = M + 1
                Case 2: If Cadenza(aEstr(i)) = F Then sRic = sRic & Format2(aEstr(i)) & ",":sum = sum + aEstr(i):M = M + 1
                Case 3: If Figura(aEstr(i)) = F Then sRic = sRic & Format2(aEstr(i)) & ",":sum = sum + aEstr(i):M = M + 1
                End Select
            Next
            'raccolco i Dati nell Array
            aRic(F,1) = RimuoviLastChr(sRic,",") ' stringa numeri
            aRic(F,2) = Format2(Fuori90(sum)) ' somma con fuori 90
            aRic(F,3) = Format2(M)
        Next
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        'codice  output per verifica raccolta
        Scrivi
        Scrivi "|RICERCA        |N.E |SUM |" & FormatSpace("ESTRATTI",21) & "|",,,RGB(255,128,192),,,,True
        For i = uB To lB
            ' filtro per utilizzo dati utili
            If Int(aRic(i,3)) >= PMin And Int(aRic(i,3)) <= Pmax Then
                Scrivi "|" & FormatSpace(aVric(iDric),10) & ":" & Format2(i) & "  |" & aRic(i,3) & "  |" & aRic(i,2) & "  |" & FormatSpace(aRic(i,1),21) & "|",,,RGB(255,232,243)
            Else
                Scrivi "|" & FormatSpace(aVric(iDric),10) & ":" & Format2(i) & "  |" & aRic(i,3) & "  |" & aRic(i,2) & "  |Nessun Caso Rilevato |",,,RGB(155,132,143),vbWhite
            End If
        Next
End Sub
ciao...
 
ciao Magia
grazie mille per la considerazione, e, visto che ci conosciamo virtualmente da tempo , mi farebbe piacere se mi dessi del tu .
spero di esserti stato utile :)
P.s:
di ad amaretto che non è niente male come scripter ;)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 07 ottobre 2025
    Bari
    22
    79
    42
    33
    02
    Cagliari
    06
    81
    69
    21
    73
    Firenze
    52
    15
    67
    03
    60
    Genova
    21
    76
    02
    23
    19
    Milano
    28
    35
    08
    53
    60
    Napoli
    05
    57
    14
    39
    43
    Palermo
    46
    35
    40
    64
    48
    Roma
    04
    80
    71
    23
    40
    Torino
    38
    53
    05
    78
    50
    Venezia
    90
    43
    01
    60
    02
    Nazionale
    02
    41
    72
    22
    31
    Estrazione Simbolotto
    18
    37
    07
    22
    09
Indietro
Alto