Novità

Controllare che ci siano i numeri 1,2,3,4,5 in un determinato vettore...

lotto_tom75

Advanced Premium Member
Codice:
Scrivi "BARI:"
For i = 0 To UBound(posizioniuscitesuBA)
Call OrdinaMatrice(posizioniuscitesuBA,1)
Call Scrivi (posizioniuscitesuBA(i) & ".",,False)
Next

if  ............ then
Scrivi
Scrivi "<font color=green>" & "ruota completed" & "</font>"
Else
Scrivi "<font color=red>" & "ruota target!" & "</font>"
End If

Al posto dei puntini vorrei mettere la condizione "se sono presenti nel vettore posizioniuscitesuBA tutte le posizioni... "

Ma al momento mi sfugge proprio come possa fare

Qualche idea?


Grazie

??

Es. output

Situazione del NUMERO: 90 analizzando le ultime 180 estrazioni

BARI:
.1.1.2.2.3.4.4.4.5.5.5. <<< ruota completed

CAGLIARI:
.1.2.2.2.2.2.3.3.3.4.4.4.4.4.4.5.5.5. <<< ruota completed
FIRENZE:
.1.2.2.4.4.5.5. <<< ruota target!
GENOVA:
.1.2.2.3.3.5. <<< ruota target!
MILANO:
.1.1.3.4.4.4.5.5.5. <<< ruota target!
NAPOLI:
.1.2.3.3.3.3.4.5.5.5. <<< ruota completed
PALERMO:
.1.1.2.3.3.4.5.5.5. <<< ruota completed
ROMA:
.1.1.1.1.1.2.2.2.2.3.4.4.4.5. <<< ruota completed
TORINO:
.1.1.2.2.3.3.4.4.4.5. <<< ruota completed
TORINO:
VENEZIA:
.1.1.1.2.2.2.3.4.4.5. <<< ruota completed
NAZIONALE:
.1.2.2.3.4.5.5. <<< ruota completed
 
Ultima modifica:
Perchè non metti lo script completo da correggere, ci eviti di doverlo costruire e nel farlo potremmo usare una logica diversa rispetto alla tua.
comunque a stima dovresti predisporre la lettura/confronto della matrice (posizioniuscitesuBA con la stringao numeri 1.2.3.4.5) nel ciclo for con uscita del valore si o no ( true o false) da inserire nella tua if di scrittura.
ciao
 
Ultima modifica:
Ciao ecco il mio scriptino claudio per semplice analisi posizionale su TT separate (purtroppo nn valuta la ruota TT e non capisco perchè...)

Codice:
Option Explicit
Sub Main
   Dim idestrazione
   Dim numero90
   Dim pos
   numero90 = 90
   Dim Estrattodaverificare
   Dim ruota
   Dim Ini
   Dim fine
   fine = EstrazioneFin
   Ini = fine - 180
   Dim posizioniuscitesuBA
   posizioniuscitesuBA = Array(0)
   Dim posizioniuscitesuCA
   posizioniuscitesuCA = Array(0)
   Dim posizioniuscitesuFI
   posizioniuscitesuFI = Array(0)
   Dim posizioniuscitesuGE
   posizioniuscitesuGE = Array(0)
   Dim posizioniuscitesuMI
   posizioniuscitesuMI = Array(0)
   Dim posizioniuscitesuNA
   posizioniuscitesuNA = Array(0)
   Dim posizioniuscitesuPA
   posizioniuscitesuPA = Array(0)
   Dim posizioniuscitesuRO
   posizioniuscitesuRO = Array(0)
   Dim posizioniuscitesuTO
   posizioniuscitesuTO = Array(0)
   Dim posizioniuscitesuVE
   posizioniuscitesuVE = Array(0)
   Dim posizioniuscitesuNZ
   posizioniuscitesuNZ = Array(0)
   Dim posizioniuscitesuTT
   posizioniuscitesuTT = Array(0)
   For idestrazione = Ini To fine
      For ruota = 1 To 12
         For pos = 1 To 5
            Estrattodaverificare = Estratto(idestrazione,ruota,pos)
            If Estrattodaverificare = numero90 Then
               Scrivi "<font color=red>" & SiglaRuota(ruota) & " ok " & "</font>" & " " & idestrazione & " Posiz " & pos
               Dim contaposizionioccupatesuBA
               contaposizionioccupatesuBA = Array(0)
               Select Case(ruota)
               Case BA_
                  posizioniuscitesuBA = array_push(posizioniuscitesuBA,pos)
                  'Select Case (pos)
                  'Case 1
                  'contaposizionioccupatesuBA = array_push(contaposizionioccupatesuBA, 1)
                  'Case 2
                  'contaposizionioccupatesuBA = array_push(contaposizionioccupatesuBA, 2)
                  'Case 3
                  'contaposizionioccupatesuBA = array_push(contaposizionioccupatesuBA, 3)
                  'Case 4
                  'contaposizionioccupatesuBA = array_push(contaposizionioccupatesuBA, 4)
                  'Case 5
                  'contaposizionioccupatesuBA = array_push(contaposizionioccupatesuBA, 5)
                  'End Select
                  '
                  'Call EliminaRipetuti(contaposizionioccupatesuBA)
               Case CA_
                  posizioniuscitesuCA = array_push(posizioniuscitesuCA,pos)
               Case FI_
                  posizioniuscitesuFI = array_push(posizioniuscitesuFI,pos)
               Case GE_
                  posizioniuscitesuGE = array_push(posizioniuscitesuGE,pos)
               Case MI_
                  posizioniuscitesuMI = array_push(posizioniuscitesuMI,pos)
               Case NA_
                  posizioniuscitesuNA = array_push(posizioniuscitesuNA,pos)
               Case PA_
                  posizioniuscitesuPA = array_push(posizioniuscitesuPA,pos)
               Case RO_
                  posizioniuscitesuRO = array_push(posizioniuscitesuRO,pos)
               Case TO_
                  posizioniuscitesuTO = array_push(posizioniuscitesuTO,pos)
               Case VE_
                  posizioniuscitesuVE = array_push(posizioniuscitesuVE,pos)
               Case NZ_
                  posizioniuscitesuNZ = array_push(posizioniuscitesuNZ,pos)
               Case TT_
                  posizioniuscitesuTT = array_push(posizioniuscitesuTT,pos)
               End Select
            Else
               Scrivi SiglaRuota(ruota) & " no "
            End If
            If ScriptInterrotto Then Exit For
         Next ' x pos
         If ScriptInterrotto Then Exit For
      Next ' x ruota
      Call AvanzamentoElab(Ini,EstrazioneFin,idestrazione)
      If ScriptInterrotto Then Exit For
   Next ' x idestrazione
   Dim i
   Scrivi
   Call Scrivi("Situazione del NUMERO: " & numero90 & " analizzando le ultime " & fine - Ini & " estrazioni ")
   Scrivi
   Scrivi "BARI:"
   For i = 0 To UBound(posizioniuscitesuBA)
      Call OrdinaMatrice(posizioniuscitesuBA,1)
      Call Scrivi(posizioniuscitesuBA(i) & ".",,False)
   Next
   Scrivi
   Scrivi "verifica contenuto vettore contaposizionioccupatesuBA"
   Call EliminaRipetuti(posizioniuscitesuBA)
   Scrivi StringaNumeri(posizioniuscitesuBA)
   'Scrivi contaposizionioccupatesuBA(0)
   'Scrivi contaposizionioccupatesuBA(1)
   'Scrivi contaposizionioccupatesuBA(2)
   'Scrivi contaposizionioccupatesuBA(3)
   'Scrivi contaposizionioccupatesuBA(4)
   Scrivi
   If "la somma degli elementi presenti in posizioniuscitesuBA è 15" Then .
   Scrivi
   Scrivi "<font color=green>" & "ruota completed" & "</font>"
Else
   Scrivi "<font color=red>" & "ruota target!" & "</font>"
End If
Next
Scrivi
Scrivi "CAGLIARI:"
For i = 0 To UBound(posizioniuscitesuCA)
   Call OrdinaMatrice(posizioniuscitesuCA,1)
   Call Scrivi(posizioniuscitesuCA(i) & ".",,False)
Next
Scrivi
Scrivi "FIRENZE:"
For i = 0 To UBound(posizioniuscitesuFI)
   Call OrdinaMatrice(posizioniuscitesuFI,1)
   Call Scrivi(posizioniuscitesuFI(i) & ".",,False)
Next
Scrivi
Scrivi "GENOVA:"
For i = 0 To UBound(posizioniuscitesuGE)
   Call OrdinaMatrice(posizioniuscitesuGE,1)
   Call Scrivi(posizioniuscitesuGE(i) & ".",,False)
Next
Scrivi
Scrivi "MILANO:"
For i = 0 To UBound(posizioniuscitesuMI)
   Call OrdinaMatrice(posizioniuscitesuMI,1)
   Call Scrivi(posizioniuscitesuMI(i) & ".",,False)
Next
Scrivi
Scrivi "NAPOLI:"
For i = 0 To UBound(posizioniuscitesuNA)
   Call OrdinaMatrice(posizioniuscitesuNA,1)
   Call Scrivi(posizioniuscitesuNA(i) & ".",,False)
Next
Scrivi
Scrivi "PALERMO:"
For i = 0 To UBound(posizioniuscitesuPA)
   Call OrdinaMatrice(posizioniuscitesuPA,1)
   Call Scrivi(posizioniuscitesuPA(i) & ".",,False)
Next
Scrivi
Scrivi "ROMA:"
For i = 0 To UBound(posizioniuscitesuRO)
   Call OrdinaMatrice(posizioniuscitesuRO,1)
   Call Scrivi(posizioniuscitesuRO(i) & ".",,False)
Next
Scrivi
Scrivi "TORINO:"
For i = 0 To UBound(posizioniuscitesuTO)
   Call OrdinaMatrice(posizioniuscitesuTO,1)
   Call Scrivi(posizioniuscitesuTO(i) & ".",,False)
Next
Scrivi
Scrivi "VENEZIA:"
For i = 0 To UBound(posizioniuscitesuVE)
   Call OrdinaMatrice(posizioniuscitesuVE,1)
   Call Scrivi(posizioniuscitesuVE(i) & ".",,False)
Next
Scrivi
Scrivi "NAZIONALE:"
For i = 0 To UBound(posizioniuscitesuNZ)
   Call OrdinaMatrice(posizioniuscitesuNZ,1)
   Call Scrivi(posizioniuscitesuNZ(i) & ".",,False)
Next
Scrivi
Scrivi "TUTTE:"
For i = 0 To UBound(posizioniuscitesuTT)
   Call OrdinaMatrice(posizioniuscitesuTT,1)
   Call Scrivi(posizioniuscitesuTT(i) & ".",,False)
Next
End Sub
Function array_push(arr,vars)
   Dim k,newelem,newarrsize,elem
   If IsArray(arr) Then
      If Len(vars) > 0 Then
         If InStr(vars,",") = False Then
            newarrsize = CInt(UBound(arr) + 1)
            ReDim Preserve arr(newarrsize)
            arr(newarrsize) = vars
         Else
            k =(UBound(arr) + 1)
            newelem = Split(vars,",")
            newarrsize = CInt(UBound(arr) + UBound(newelem) + 1)
            ReDim Preserve arr(newarrsize)
            For Each elem In newelem
               arr(k) = Trim(elem)
               k = k + 1
            Next
         End If
      End If
      array_push = arr
   Else
      array_push = False
   End If
End Function

Ad ogni modo credo che in questo caso mi basti sapere/ricordare come si sommano gli elementi in un vector perchè poi se la somma è uguale a 1+2+3+4+5=15 allora la ruota posso definirla completed ;) senza problemi avendo richiamato elimina ripetuti poco prima di effettuare la somma e verifica.

??
 
Ultima modifica:
Secondo me prima di affrontare problemi simili dovresti studiare la logica di Boole.

Applicare i cicli for / next ... e ...

Penso che quanto ti ha accennato Claudio sia molto più semplice da realizzare.

Ti conviene convalidare le singole presenze con "Zero" fintanto che sono assenti.

"Uno" se presenti (una o più volte).

Poi contare quanti "Uno" ci sono ed a seguito di questo determinare se ci sono

tutti gli (enne) elementi cercati.

Però la ricerca dell' algoritmo migliore dipende anche da cosa si vuole fare "dopo"

e da cosa si è fatto "prima".

A questo proposito, non essendo uno (spico) analista, di cosa hai fatto ...

e di quali problemi ti sei creato, o ti stai creando,

evito di osservarlo ... anche di sfuggita.

:)
 
Questa volta è bastato google per rinfrescarmi la memoria e per risolvere il mio problemuccio...

Codice:
   For i=0 To UBound(posizioniuscitesuBA)
   somma=somma+posizioniuscitesuBA(i)
   Next

   Scrivi
   Scrivi "La somma da verificare x BA è " & somma
   Scrivi

   If somma=15 Then
   Scrivi
   Scrivi "<font color=green>" & "ruota completed" & "</font>"
Else
   Scrivi "<font color=red>" & "ruota target!" & "</font>"
End If

Grazie comunque ad entrambi per l'attenzione...

?:)
 
Elimina ripetuti e somma è una buona soluzione visto che i confronti di array ti sono ostici.
La ripetizione della gestione scrittura ruota x ruota non è il massimo... è ingombrante ;) ;);)
Usa i for ... next come suggerito da Joe e ridurrai lo script di decine di righe
Pasticceria Tom... saluti

ps: una x tutte.....
quando fai il ciclo su TT x pos = 1 to 5 come può lo script identificare la pos su TT?
La funzione Estratto ottiene il numero estratto in una ruota specifica all'estrazione indicata e nella posizione voluta ( vedi Help)

Più che una torta, mi sembra che tu stia facendo una "marmellata a pezzettoni di frutta varia" :LOL::LOL:;);)
Ancora saluti scherzosi.
 
Ultima modifica:
Ciao Tom non so se ho capito bene quello che ti serve.
controlla se è questo, ma vista la differenza di righe forse mi manca qualche passaggio.
tieni conto che l ho listato appena finito di lavorare e la stanchezza gioca brutti scherzi
percio no ti garantisco che sia esatto,
sicuramente lo script ha ridondanze,ed è migliorabile,ma questo sono riuscito a fare.
accontentati ;)
ciao :)
Codice:
Option Explicit
' controllare che lo script dia risultati corretti, non ne viene garantita l esattezza
' script per lottoTom75 su forum lottoCed
' non modificare vale solo per la sorte d estratto '
Sub Main
   Call SetColorSezione(vbBlack)
   Dim Ini,Fin
   Dim idEstr,qEstr
   Dim N,r,p,k
   Dim aN(1),aR(1)
   ReDim aNum(0),aRuote(0)
   Call ScegliNumeri(aNum)
   Call ScegliRuote(aRuote)
   qEstr = 180 ' quante estrazioni vuoi esaminare
   Fin = EstrazioneFin
   Ini = Fin -(qEstr - 1) ' non cambiare
   For r = 1 To UBound(aRuote) ' ciclo le ruote da analizzare
      aR(1) = aRuote(r)
      If aR(1) <> 11 Then ' la ruota tutte non viene considerata
         For N = 1 To UBound(aNum) ' ciclo i numeri che voglio analizzare
            aN(1) = aNum(N)
            ReDim aRit(0),aIdestr(0)
            Call ElencoRitardiTurbo(aN,aR,1,Ini,Fin,aRit,aIdestr) ' richiamo le eventuali presenze nei concorsi da vagliare
            ReDim aPos(5) ' dichiaro l array delle posizioni
            ' per default imposto ad assente con il simbolo "--"
            For p = 1 To 5
               aPos(p) = "--"
            Next
            Scrivi "   " & SiglaRuota(aR(1)) & "  " & Format2(aNum(N)) & "   ",,0,,vbWhite
            ' ciclo l array dei concorsi
            For idEstr = 1 To UBound(aIdestr)
               p = Posizione(aIdestr(idEstr),aR(1),aN(1)) ' prendo la posizione di sortita
               ' se presente nella posizione analizzata , cambio il segno "--" in "XX"
               aPos(p) = "XX"
            Next
            k = 0
            ' ciclo le posizioni le scrivo e conto quante sono positive
            For p = 1 To 5
               If aPos(p) = "XX" Then k = k + 1
               Scrivi " | " & aPos(p),,0,,vbCyan
            Next
            Scrivi " | ",,0,,vbCyan
            ' scrivo in output la situazione posizionale
            Select Case k
            Case 0
               Scrivi "  assente in qualsiasi posizione ",1,,,vbRed
            Case 1,2,3,4
               Scrivi "   restano " &(5 - k) & "  posizioni scoperte",,,,RGB(255,128,0)
            Case 5
               Scrivi "   tutte le posizioni sono coperte",,,,vbGreen
            End Select
         Next
      End If
   Next
   Scrivi
   Scrivi
End Sub
 
Ciao Tom non so se ho capito bene quello che ti serve.
controlla se è questo, ma vista la differenza di righe forse mi manca qualche passaggio.
tieni conto che l ho listato appena finito di lavorare e la stanchezza gioca brutti scherzi
percio no ti garantisco che sia esatto,
sicuramente lo script ha ridondanze,ed è migliorabile,ma questo sono riuscito a fare.
accontentati ;)
ciao :)
Codice:
Option Explicit
' controllare che lo script dia risultati corretti, non ne viene garantita l esattezza
' script per lottoTom75 su forum lottoCed
' non modificare vale solo per la sorte d estratto '
Sub Main
   Call SetColorSezione(vbBlack)
   Dim Ini,Fin
   Dim idEstr,qEstr
   Dim N,r,p,k
   Dim aN(1),aR(1)
   ReDim aNum(0),aRuote(0)
   Call ScegliNumeri(aNum)
   Call ScegliRuote(aRuote)
   qEstr = 180 ' quante estrazioni vuoi esaminare
   Fin = EstrazioneFin
   Ini = Fin -(qEstr - 1) ' non cambiare
   For r = 1 To UBound(aRuote) ' ciclo le ruote da analizzare
      aR(1) = aRuote(r)
      If aR(1) <> 11 Then ' la ruota tutte non viene considerata
         For N = 1 To UBound(aNum) ' ciclo i numeri che voglio analizzare
            aN(1) = aNum(N)
            ReDim aRit(0),aIdestr(0)
            Call ElencoRitardiTurbo(aN,aR,1,Ini,Fin,aRit,aIdestr) ' richiamo le eventuali presenze nei concorsi da vagliare
            ReDim aPos(5) ' dichiaro l array delle posizioni
            ' per default imposto ad assente con il simbolo "--"
            For p = 1 To 5
               aPos(p) = "--"
            Next
            Scrivi "   " & SiglaRuota(aR(1)) & "  " & Format2(aNum(N)) & "   ",,0,,vbWhite
            ' ciclo l array dei concorsi
            For idEstr = 1 To UBound(aIdestr)
               p = Posizione(aIdestr(idEstr),aR(1),aN(1)) ' prendo la posizione di sortita
               ' se presente nella posizione analizzata , cambio il segno "--" in "XX"
               aPos(p) = "XX"
            Next
            k = 0
            ' ciclo le posizioni le scrivo e conto quante sono positive
            For p = 1 To 5
               If aPos(p) = "XX" Then k = k + 1
               Scrivi " | " & aPos(p),,0,,vbCyan
            Next
            Scrivi " | ",,0,,vbCyan
            ' scrivo in output la situazione posizionale
            Select Case k
            Case 0
               Scrivi "  assente in qualsiasi posizione ",1,,,vbRed
            Case 1,2,3,4
               Scrivi "   restano " &(5 - k) & "  posizioni scoperte",,,,RGB(255,128,0)
            Case 5
               Scrivi "   tutte le posizioni sono coperte",,,,vbGreen
            End Select
         Next
      End If
   Next
   Scrivi
   Scrivi
End Sub

Leggenda ? con questo tuo top script mi hai procurato doppia soddisfazione!

1) Hai dato per l'ennesima volta prova della tua bravura in fatto di programmazione, sintesi, gentilezza e rapidità nonchè comprensione delle richieste...

2) Mi hai dato la possibilità di verificare che anche il mio "pasticcio" funziona alla grande :D Infatti entrambi i nostri script hanno valori totalmente identici in output ;) Quindi GRAZIE e GRAZIE! e complimenti ancora per la tua ormai innarrivabile bravura! ????????:)

Sotto, x eventuale verifica dei rispettivi output "analoghi", ti(vi) riporto anche la mia marmellata... molto + lunga, obsoleta.., ridondante... rispetto alla tua "perla sintetica" ma ugualmente funzionale! ?

Codice:
Option Explicit
Sub Main
   Dim idestrazione
   Dim numero' (90)
   Dim pos
   Dim Estrattodaverificare
   Dim ruota
   Dim Ini
   Dim fine
   fine = EstrazioneFin
   Ini = fine - 630 '540
   Dim sommaBA
   sommaBA = 0
   Dim sommaCA
   sommaCA = 0
   Dim sommaFI
   sommaFI = 0
   Dim sommaGE
   sommaGE = 0
   Dim sommaMI
   sommaMI = 0
   Dim sommaNA
   sommaNA = 0
   Dim sommaPA
   sommaPA = 0
   Dim sommaRO
   sommaRO = 0
   Dim sommaTO
   sommaTO = 0
   Dim sommaVE
   sommaVE = 0
   Dim sommaNZ
   sommaNZ = 0
   Dim sommaTT
   sommaTT = 0
   Dim posizioniuscitesuBA
   posizioniuscitesuBA = Array(0)
   Dim posizioniuscitesuCA
   posizioniuscitesuCA = Array(0)
   Dim posizioniuscitesuFI
   posizioniuscitesuFI = Array(0)
   Dim posizioniuscitesuGE
   posizioniuscitesuGE = Array(0)
   Dim posizioniuscitesuMI
   posizioniuscitesuMI = Array(0)
   Dim posizioniuscitesuNA
   posizioniuscitesuNA = Array(0)
   Dim posizioniuscitesuPA
   posizioniuscitesuPA = Array(0)
   Dim posizioniuscitesuRO
   posizioniuscitesuRO = Array(0)
   Dim posizioniuscitesuTO
   posizioniuscitesuTO = Array(0)
   Dim posizioniuscitesuVE
   posizioniuscitesuVE = Array(0)
   Dim posizioniuscitesuNZ
   posizioniuscitesuNZ = Array(0)
   Dim posizioniuscitesuTT
   posizioniuscitesuTT = Array(0)
   For numero = 1 To 90
      Call Messaggio("Numero analizzato " & numero)
      For idestrazione = Ini To fine
         For ruota = 1 To 12
            For pos = 1 To 5
               Estrattodaverificare = Estratto(idestrazione,ruota,pos)
               If Estrattodaverificare = numero Then
                  'Scrivi "<font color=red>" & SiglaRuota(ruota) & " ok " & "</font>" & " " & idestrazione & " Posiz " & pos
                  Dim contaposizionioccupatesuBA
                  contaposizionioccupatesuBA = Array(0)
                  Select Case(ruota)
                  Case BA_
                     posizioniuscitesuBA = array_push(posizioniuscitesuBA,pos)
                  Case CA_
                     posizioniuscitesuCA = array_push(posizioniuscitesuCA,pos)
                  Case FI_
                     posizioniuscitesuFI = array_push(posizioniuscitesuFI,pos)
                  Case GE_
                     posizioniuscitesuGE = array_push(posizioniuscitesuGE,pos)
                  Case MI_
                     posizioniuscitesuMI = array_push(posizioniuscitesuMI,pos)
                  Case NA_
                     posizioniuscitesuNA = array_push(posizioniuscitesuNA,pos)
                  Case PA_
                     posizioniuscitesuPA = array_push(posizioniuscitesuPA,pos)
                  Case RO_
                     posizioniuscitesuRO = array_push(posizioniuscitesuRO,pos)
                  Case TO_
                     posizioniuscitesuTO = array_push(posizioniuscitesuTO,pos)
                  Case VE_
                     posizioniuscitesuVE = array_push(posizioniuscitesuVE,pos)
                  Case NZ_
                     posizioniuscitesuNZ = array_push(posizioniuscitesuNZ,pos)
                  Case TT_
                     posizioniuscitesuTT = array_push(posizioniuscitesuTT,pos)
                  End Select
               Else
                  'Scrivi SiglaRuota(ruota) & " no "
               End If
               If ScriptInterrotto Then Exit For
            Next ' x pos
            If ScriptInterrotto Then Exit For
         Next ' x ruota
         Call AvanzamentoElab(Ini,EstrazioneFin,idestrazione)
         If ScriptInterrotto Then Exit For
      Next ' x idestrazione
      Dim i
      Scrivi
      Call Scrivi("<font color=blue>Situazione del numero: " & numero & " analizzando le ultime " & fine - Ini & " estrazioni</font> ")
      Scrivi
      Scrivi "BARI:"
      For i = 0 To UBound(posizioniuscitesuBA)
         Call OrdinaMatrice(posizioniuscitesuBA,1)
         Call Scrivi(posizioniuscitesuBA(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuBA"
      Call EliminaRipetuti(posizioniuscitesuBA)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuBA)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuBA)
         sommaBA = sommaBA + posizioniuscitesuBA(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x BA è " & sommaBA
      'Scrivi
      If sommaBA = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "CAGLIARI:"
      For i = 0 To UBound(posizioniuscitesuCA)
         Call OrdinaMatrice(posizioniuscitesuCA,1)
         Call Scrivi(posizioniuscitesuCA(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuCA"
      Call EliminaRipetuti(posizioniuscitesuCA)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuCA)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuCA)
         sommaCA = sommaCA + posizioniuscitesuCA(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x CA è " & sommaCA
      'Scrivi
      If sommaCA = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "FIRENZE:"
      For i = 0 To UBound(posizioniuscitesuFI)
         Call OrdinaMatrice(posizioniuscitesuFI,1)
         Call Scrivi(posizioniuscitesuFI(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuFI"
      Call EliminaRipetuti(posizioniuscitesuFI)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuFI)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuFI)
         sommaFI = sommaFI + posizioniuscitesuFI(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x FI è " & sommaFI
      'Scrivi
      If sommaFI = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "GENOVA:"
      For i = 0 To UBound(posizioniuscitesuGE)
         Call OrdinaMatrice(posizioniuscitesuGE,1)
         Call Scrivi(posizioniuscitesuGE(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuGE"
      Call EliminaRipetuti(posizioniuscitesuGE)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuGE)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuGE)
         sommaGE = sommaGE + posizioniuscitesuGE(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x GE è " & sommaGE
      'Scrivi
      If sommaGE = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "MILANO:"
      For i = 0 To UBound(posizioniuscitesuMI)
         Call OrdinaMatrice(posizioniuscitesuMI,1)
         Call Scrivi(posizioniuscitesuMI(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuMI"
      Call EliminaRipetuti(posizioniuscitesuMI)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuMI)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuMI)
         sommaMI = sommaMI + posizioniuscitesuMI(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x MI è " & sommaMI
      'Scrivi
      If sommaMI = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "NAPOLI:"
      For i = 0 To UBound(posizioniuscitesuNA)
         Call OrdinaMatrice(posizioniuscitesuNA,1)
         Call Scrivi(posizioniuscitesuNA(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuNA"
      Call EliminaRipetuti(posizioniuscitesuNA)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuNA)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuNA)
         sommaNA = sommaNA + posizioniuscitesuNA(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x NA è " & sommaNA
      'Scrivi
      If sommaNA = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "PALERMO:"
      For i = 0 To UBound(posizioniuscitesuPA)
         Call OrdinaMatrice(posizioniuscitesuPA,1)
         Call Scrivi(posizioniuscitesuPA(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuPA"
      Call EliminaRipetuti(posizioniuscitesuPA)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuPA)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuPA)
         sommaPA = sommaPA + posizioniuscitesuPA(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x PA è " & sommaPA
      'Scrivi
      If sommaPA = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "ROMA:"
      For i = 0 To UBound(posizioniuscitesuRO)
         Call OrdinaMatrice(posizioniuscitesuRO,1)
         Call Scrivi(posizioniuscitesuRO(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuRO"
      Call EliminaRipetuti(posizioniuscitesuRO)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuRO)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuRO)
         sommaRO = sommaRO + posizioniuscitesuRO(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x RO è " & sommaRO
      'Scrivi
      If sommaRO = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "TORINO:"
      For i = 0 To UBound(posizioniuscitesuTO)
         Call OrdinaMatrice(posizioniuscitesuTO,1)
         Call Scrivi(posizioniuscitesuTO(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuTO"
      Call EliminaRipetuti(posizioniuscitesuTO)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuTO)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuTO)
         sommaTO = sommaTO + posizioniuscitesuTO(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x TO è " & sommaTO
      'Scrivi
      If sommaTO = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "VENEZIA:"
      For i = 0 To UBound(posizioniuscitesuVE)
         Call OrdinaMatrice(posizioniuscitesuVE,1)
         Call Scrivi(posizioniuscitesuVE(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuVE"
      Call EliminaRipetuti(posizioniuscitesuVE)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuVE)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuVE)
         sommaVE = sommaVE + posizioniuscitesuVE(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x VE è " & sommaVE
      'Scrivi
      If sommaVE = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "NAZIONALE:"
      For i = 0 To UBound(posizioniuscitesuNZ)
         Call OrdinaMatrice(posizioniuscitesuNZ,1)
         Call Scrivi(posizioniuscitesuNZ(i) & ".",,False)
      Next
      Scrivi
      Scrivi "verifica contenuto vettore contaposizionioccupatesuNZ"
      Call EliminaRipetuti(posizioniuscitesuNZ)
      Scrivi "Posizioni sfaldate senza ripetuti " & StringaNumeri(posizioniuscitesuNZ)
      Scrivi
      For i = 0 To UBound(posizioniuscitesuNZ)
         sommaNZ = sommaNZ + posizioniuscitesuNZ(i)
      Next
      'Scrivi
      Scrivi "La somma da verificare x NZ è " & sommaNZ
      'Scrivi
      If sommaNZ = 15 Then
         'Scrivi
         Scrivi "<font color=green>" & "ruota completed" & "</font>"
      Else
         Scrivi "<font color=red>" & "ruota target!" & "</font>"
      End If
      'Next
      Scrivi
      Scrivi "TUTTE:"
      For i = 0 To UBound(posizioniuscitesuTT)
         Call OrdinaMatrice(posizioniuscitesuTT,1)
         Call Scrivi(posizioniuscitesuTT(i) & ".",,False)
      Next
      'dopo ogni analisi di ogni numero resetto tutto...
      sommaBA = 0
      sommaCA = 0
      sommaFI = 0
      sommaGE = 0
      sommaMI = 0
      sommaNA = 0
      sommaPA = 0
      sommaRO = 0
      sommaTO = 0
      sommaVE = 0
      sommaNZ = 0
      sommaTT = 0
      Call Erase(posizioniuscitesuBA)
      posizioniuscitesuBA = Array(0)
      Call Erase(posizioniuscitesuCA)
      posizioniuscitesuCA = Array(0)
      Call Erase(posizioniuscitesuFI)
      posizioniuscitesuFI = Array(0)
      Call Erase(posizioniuscitesuGE)
      posizioniuscitesuGE = Array(0)
      Call Erase(posizioniuscitesuMI)
      posizioniuscitesuMI = Array(0)
      Call Erase(posizioniuscitesuNA)
      posizioniuscitesuNA = Array(0)
      Call Erase(posizioniuscitesuPA)
      posizioniuscitesuPA = Array(0)
      Call Erase(posizioniuscitesuRO)
      posizioniuscitesuRO = Array(0)
      Call Erase(posizioniuscitesuTO)
      posizioniuscitesuTO = Array(0)
      Call Erase(posizioniuscitesuVE)
      posizioniuscitesuVE = Array(0)
      Call Erase(posizioniuscitesuNZ)
      posizioniuscitesuNZ = Array(0)
      Call Erase(posizioniuscitesuTT)
      posizioniuscitesuTT = Array(0)
      If ScriptInterrotto Then Exit For
   Next ' x numero
End Sub
Function array_push(arr,vars)
   Dim k,newelem,newarrsize,elem
   If IsArray(arr) Then
      If Len(vars) > 0 Then
         If InStr(vars,",") = False Then
            newarrsize = CInt(UBound(arr) + 1)
            ReDim Preserve arr(newarrsize)
            arr(newarrsize) = vars
         Else
            k =(UBound(arr) + 1)
            newelem = Split(vars,",")
            newarrsize = CInt(UBound(arr) + UBound(newelem) + 1)
            ReDim Preserve arr(newarrsize)
            For Each elem In newelem
               arr(k) = Trim(elem)
               k = k + 1
            Next
         End If
      End If
      array_push = arr
   Else
      array_push = False
   End If
End Function

;)
 
Ultima modifica:
Tom
Ancora una volta a costo Zero e senza sforzo di correzione.
Sappi che alla lunga i tuoi neuroni andranno in "tilt".
Spero che il lavoro di i legend ti serva ad imparare. :) :) ;) ;)
Ciao
 
Ciao filotto,bisogna chiedere a tom la logica dello script e capire perché 180 estrazioni.
Cosa vuole ottenere con i valori target
La modifica è fattibile però rallenta un po lo script credo
Ciao.
 
Ciao Legend era perchè avevo fatto una prova mettendo 80 invece di 180 e naturalmente i "-- " erano molti di più di quanti invece se avessi messo 180 per cui mi chiedevo se invece dei " -- " avessi visto il numero dei ritardi avrei fatto delle altre considerazioni tipo due o tre ritardi sincroni -- tutto qua-
 
Filotto se ti serve per questo , avevo fatto uno script per Paolo che fa molto di più.
Se fai richiesta qui in download sicuramente. qualcuno ti indicherà dove trovarlo, io non li conservo.
 
Ciao filotto,bisogna chiedere a tom la logica dello script e capire perché 180 estrazioni.
Cosa vuole ottenere con i valori target
La modifica è fattibile però rallenta un po lo script credo
Ciao.

Semplicemente aumento il range (in questo caso 180 estrazioni) fino a che ho poche risultanze come possibili "ruote target". Tutto qui ;) ??
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 14 gennaio 2025
    Bari
    41
    25
    12
    73
    55
    Cagliari
    54
    20
    48
    32
    67
    Firenze
    75
    23
    68
    10
    38
    Genova
    33
    27
    81
    70
    64
    Milano
    68
    01
    64
    86
    87
    Napoli
    47
    75
    45
    10
    21
    Palermo
    55
    86
    33
    53
    70
    Roma
    88
    78
    61
    06
    07
    Torino
    76
    08
    23
    61
    82
    Venezia
    25
    15
    49
    21
    81
    Nazionale
    70
    10
    32
    78
    07
    Estrazione Simbolotto
    Bari
    07
    14
    28
    45
    31
Indietro
Alto