Novità

Per Joe o chi può

solare

Advanced Member >PLATINUM<
Ciao
mi serve un script in cui indico il numero per la ricerca il mese di ricerca e l' anno di ricerca.
lo script deve restituirmi dopo quante estrazioni e' uscito rispetto la prima estrazione del mese.
esempio nazionale nr 9 nel mese 07 dell' anno 2023 e' uscito alla prima estrazione
Grazie
 

BaffoBlù

Advanced Member >PLATINUM<
ciao, prova questo script in attesa di meglio

non ha senso impostare l'anno e il mese perché ti darebbe un UNICO risultato riguardo SOLO a quell'anno e a quel mese

scegli la ruota
scegli il numero
scegli il mese
scegli i colpi

la ricerca è impostata per iniziare dall'anno 2000



Codice:
Option Explicit
Sub Main()
   Dim es,Ini,Fin,r,Tm,Clp,co,num,imese
   Dim ruota(11)
   Dim posta(10)
   Dim n(1)
   posta(1) = 1
   r = CInt(InputBox(" Scegli Ruota ",,"1"))
   num = CInt(InputBox(" Scegli Numero Ricerca ",,"1"))
   imese = CInt(InputBox(" Scegli il mese ",,"1"))
   Tm = CInt(InputBox(" Quando far partire l'analisi ? ",,"6876"))' Inizio anno 2000
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare ? ",,"18"))
   Ini = Tm
   Fin = EstrazioneFin
   co = 0
   For es = Ini To Fin
      Messaggio "elab. estr. [" &(es) & "] di " & DataEstrazione(es,1)
      Call AvanzamentoElab(Ini,Fin,es)
      If IndiceMensile(es) = 1 And Mese(es) = imese Then
         ruota(1) = r
         n(1) = num
         co = co + 1
         Scrivi String(100,"°") & " Caso n°" & co,1
         Scrivi DataEstrazione(es) & " -- " & SiglaRuota(r) & " Ambata :" & Format2(n(1)),1
         Scrivi String(100,"°"),1
         ImpostaGiocata 1,n,ruota,posta,Clp,1
         Gioca es,1,,1
      End If
      If ScriptInterrotto Then Exit For
   Next
   Scrivi
   Scrivi String(100,"*")
   ColoreTesto 2
   Scrivi" casi trovati : " & co,1
   ColoreTesto 0
   Scrivi String(100," * ")
   TestoInBandaPassante(" Idea di solare Script by BaffoBlù"),1,3,0
   ScriviResoconto
End Sub
 

joe

Advanced Member >PLATINUM PLUS<
Ciao non si capisce bene quali siano gli input e quali gli output.

Lo script (PER SPAZIOMETRIA) richiede: "Numero Mese Anno".

(SEPARATI DA UN PUNTO ".")

Il numero può avere Ritardo (Rc) o aver già terminato il suo ritardo.

Dunque lo script restituisce Ruota per Ruota e Tutte ... questi risultati.

Cioè sia l'eventuale attesa in colpi prima della caduta da inizio mese

sia il ritardo corrente (Rc) nelle singole ruote ed "a tutte".

Codice:
Option Explicit
Sub Main
   Dim I,D,Nu(1),Ru(1),S
   Dim Ini,Fin,Es,R : Ini = 1 : Fin = EstrazioneFin
   I = InputBox("Numero.Mese.Anno","Insreisci i dati","17.7.2024")
   D = Split("0." & I,".")
   Scrivi "Numero " & FormatSpace( Format2 (D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2 (D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = Ini To Fin
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then
         Scrivi "Dal " & DataEstrazione (Es,,,"/") & " al " & DataEstrazione (Fin,,,"/"),1
         Scrivi
         Nu(1) = CInt(D(1))
         For R = 1 To 12
            Ru(1) = R
            S = SeriePrima(Es,Fin,Nu,Ru,1) - Es
            Scrivi SiglaRuota(R) &  " ",1,0
            If S < 0 Then
          
             Scrivi "Rc" & FormatSpace(EstrattoRitardo (Ru(1),Nu(1),1,Fin),4,1)
            Else
            Scrivi FormatSpace( S+1,5,1) & "° Clp"
            End If
         Next
      End If
   Next
End Sub

Spero sia quanto hai chiesto.

:)
 

solare

Advanced Member >PLATINUM<
Ciao non si capisce bene quali siano gli input e quali gli output.

Lo script (PER SPAZIOMETRIA) richiede: "Numero Mese Anno".

(SEPARATI DA UN PUNTO ".")

Il numero può avere Ritardo (Rc) o aver già terminato il suo ritardo.

Dunque lo script restituisce Ruota per Ruota e Tutte ... questi risultati.

Cioè sia l'eventuale attesa in colpi prima della caduta da inizio mese

sia il ritardo corrente (Rc) nelle singole ruote ed "a tutte".

Codice:
Option Explicit
Sub Main
   Dim I,D,Nu(1),Ru(1),S
   Dim Ini,Fin,Es,R : Ini = 1 : Fin = EstrazioneFin
   I = InputBox("Numero.Mese.Anno","Insreisci i dati","17.7.2024")
   D = Split("0." & I,".")
   Scrivi "Numero " & FormatSpace( Format2 (D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2 (D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = Ini To Fin
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then
         Scrivi "Dal " & DataEstrazione (Es,,,"/") & " al " & DataEstrazione (Fin,,,"/"),1
         Scrivi
         Nu(1) = CInt(D(1))
         For R = 1 To 12
            Ru(1) = R
            S = SeriePrima(Es,Fin,Nu,Ru,1) - Es
            Scrivi SiglaRuota(R) &  " ",1,0
            If S < 0 Then
         
             Scrivi "Rc" & FormatSpace(EstrattoRitardo (Ru(1),Nu(1),1,Fin),4,1)
            Else
            Scrivi FormatSpace( S+1,5,1) & "° Clp"
            End If
         Next
      End If
   Next
End Sub

Spero sia quanto hai chiesto.

:)
Ciao Joe, grazie della risposta.
Probabilmente non mi sono spiegato bene.
A me serve sapere quanto segue:
Inserisco il mio numero "67" ruota di bari il listato deve dirmi nello scorso mese di luglio in quale indice mensile è sortito ?
a me risulta al 1 colpo, al 3 colpo, 4 colpo e 12 colpo queste sono le sortite del mese di luglio 2023.
 

joe

Advanced Member >PLATINUM PLUS<
Ok,

così, com'è lo script utilizzando SeriePrima restituisce "SOLO" il risultato utile.

In ogni caso sembra doversi intendere che se il risultato è alla prima estrazione mensile,

la giocata debba intendersi effettuata all'ultima del mese precedente.

Lo script che ti ho dato ... penso faccia appunto quello che chiedi.

Mancano i colpi successivi al primo.

:)
 

solare

Advanced Member >PLATINUM<
Ok,

così, com'è lo script utilizzando SeriePrima restituisce "SOLO" il risultato utile.

In ogni caso sembra doversi intendere che se il risultato è alla prima estrazione mensile,

la giocata debba intendersi effettuata all'ultima del mese precedente.

Lo script che ti ho dato ... penso faccia appunto quello che chiedi.

Mancano i colpi successivi al primo.

:)
Quando lancio il listato visualizza solo
Numero 67
Mese 07
Anno 2024


Non so la ruota e non so in quali colpi "O indice mensile" è sortito.
 

solare

Advanced Member >PLATINUM<
Quando lancio il listato visualizza solo
Numero 67
Mese 07
Anno 2024


Non so la ruota e non so in quali colpi "O indice mensile" è sortito.
Scusami ho visto adesso il motivo della mancata visualizzazione
poi ti faccio sapere.
Grazie infinite
 

solare

Advanced Member >PLATINUM<
Scusami ho visto adesso il motivo della mancata visualizzazione
poi ti faccio sapere.
Grazie infinite
Numero 67
Mese 07
Anno 2024

Dal 02/07/2024 al 06/07/2024

BA
Rc 4
CA Rc 36
FI 1° Clp
GE Rc 15
MI 3° Clp
NA 3° Clp
PA Rc 6
RO Rc 5
TO Rc 23
VE Rc 4
TT 1° Clp
NZ Rc 11
 

joe

Advanced Member >PLATINUM PLUS<
Prova così :

Codice:
Option Explicit
Sub Main
   Dim I,D,Nu(1),Ru(1),S
   Dim Ini,Fin,Es,Rif,Ex,R : Ini = 1 : Fin = EstrazioneFin
   I = InputBox("Numero.Mese.Anno","Insreisci i dati","67.7.2023")
   D = Split("0." & I,".")
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = Ini To Fin
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then
         Rif = Es
         Scrivi "Dal " & DataEstrazione(Rif,,,"/")  ,1,0 
         For  Ex = Rif To Rif + 20 
         If IsUltimaDelMese (Ex) Then Scrivi " al " & DataEstrazione (Ex,,,"/"),1
         Next
         Scrivi
         Scrivi "Ruota   Risultati al colpo",1
         Scrivi 
         Nu(1) = CInt(D(1))
         For R = 1 To 12 : If R = 11 Then R = 12
            Scrivi SiglaRuota(R) & " ",1,0
            Ru(1) = R
            S = SeriePrima(Rif,Fin,Nu,Ru,1)
            If S > 0 Then
               For Ex = S To S + 20
                  If Mese(Ex) = CInt(D(2)) And Posizione(Ex,Ru(1),Nu(1)) > 0 Then Scrivi FormatSpace(Ex - Rif + 1,5,1) & "°",1,0
               Next
               Scrivi
            Else
               Scrivi "Rc" & FormatSpace(EstrattoRitardo(Ru(1),Nu(1),1,Fin),4,1)
            End If
         Next
      End If
   Next
End Sub
 

solare

Advanced Member >PLATINUM<
Prova così :

Codice:
Option Explicit
Sub Main
   Dim I,D,Nu(1),Ru(1),S
   Dim Ini,Fin,Es,Rif,Ex,R : Ini = 1 : Fin = EstrazioneFin
   I = InputBox("Numero.Mese.Anno","Insreisci i dati","67.7.2023")
   D = Split("0." & I,".")
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = Ini To Fin
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then
         Rif = Es
         Scrivi "Dal " & DataEstrazione(Rif,,,"/")  ,1,0
         For  Ex = Rif To Rif + 20
         If IsUltimaDelMese (Ex) Then Scrivi " al " & DataEstrazione (Ex,,,"/"),1
         Next
         Scrivi
         Scrivi "Ruota   Risultati al colpo",1
         Scrivi
         Nu(1) = CInt(D(1))
         For R = 1 To 12 : If R = 11 Then R = 12
            Scrivi SiglaRuota(R) & " ",1,0
            Ru(1) = R
            S = SeriePrima(Rif,Fin,Nu,Ru,1)
            If S > 0 Then
               For Ex = S To S + 20
                  If Mese(Ex) = CInt(D(2)) And Posizione(Ex,Ru(1),Nu(1)) > 0 Then Scrivi FormatSpace(Ex - Rif + 1,5,1) & "°",1,0
               Next
               Scrivi
            Else
               Scrivi "Rc" & FormatSpace(EstrattoRitardo(Ru(1),Nu(1),1,Fin),4,1)
            End If
         Next
      End If
   Next
End Sub
Ottimo Joe........grazie infinite
 

joe

Advanced Member >PLATINUM PLUS<
Ottimo o non ottimo, questo è dilemma.

Ogni script (specie poi quando è nelle versioni di prova) può essere ottimizzato.

Nel funzionamento, nella velocità, nella struttura, nell'output.

Dunque quello, mal concepito, perché ho mal interpretato la richiesta è un chiaro esempio

di cosa non si dovrebbe esistere e di cosa non si dovrebbe fare.

Non spiegare bene la richiesta, non capire bene la richiesta, non avere esempi ...

Pubblicare un lavoro mal fatto, e vederlo duplicato ove non lo si può più correggere.

Ma è così che va il mondo !

Dunque :

Ho rimodulato, un pò il tutto, eliminato molte variabili e molti calcoli inutili

eliminato alcune storture presenti a recuperare le malefatte ...

eliminato buona parte del codice forse anche migliorando la leggibilità dei risultati.

Codice:
Option Explicit
Sub Main
   Dim N,I,F,D,P : I = 1 : F = EstrazioneFin
   Dim Ini,Fin,Es,R
   N = InputBox("Numero.Mese.Anno","Insreisci i dati","67.7.2024")
   D = Split("0." & N,".")
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = I To F
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then Ini = Es
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And(IsUltimaDelMese(Es) Or Es = F) Then Fin = Es
   Next
   Scrivi "Dal " & DataEstrazione(Ini,,,"/") & " al " & DataEstrazione(Fin,,,"/"),1
   Scrivi
   Scrivi "RU  [Rc] Risultati al colpo",1
   Scrivi
   For R = 1 To 12
      Scrivi SiglaRuota(R) & " ",1,0
      Scrivi FormatSpace(EstrattoRitardo(R,CInt(D(1)),1,Fin),4,1),0,0,,2
      For Es = Ini To Fin
         P = Posizione(Es,R,D(1))
         If P > 0 Then Scrivi FormatSpace(Es - Ini + 1,5,1) & "°",1,0
      Next
      Scrivi
   Next
End Sub

:)
 

solare

Advanced Member >PLATINUM<
Ottimo o non ottimo, questo è dilemma.

Ogni script (specie poi quando è nelle versioni di prova) può essere ottimizzato.

Nel funzionamento, nella velocità, nella struttura, nell'output.

Dunque quello, mal concepito, perché ho mal interpretato la richiesta è un chiaro esempio

di cosa non si dovrebbe esistere e di cosa non si dovrebbe fare.

Non spiegare bene la richiesta, non capire bene la richiesta, non avere esempi ...

Pubblicare un lavoro mal fatto, e vederlo duplicato ove non lo si può più correggere.

Ma è così che va il mondo !

Dunque :

Ho rimodulato, un pò il tutto, eliminato molte variabili e molti calcoli inutili

eliminato alcune storture presenti a recuperare le malefatte ...

eliminato buona parte del codice forse anche migliorando la leggibilità dei risultati.

Codice:
Option Explicit
Sub Main
   Dim N,I,F,D,P : I = 1 : F = EstrazioneFin
   Dim Ini,Fin,Es,R
   N = InputBox("Numero.Mese.Anno","Insreisci i dati","67.7.2024")
   D = Split("0." & N,".")
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = I To F
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then Ini = Es
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And(IsUltimaDelMese(Es) Or Es = F) Then Fin = Es
   Next
   Scrivi "Dal " & DataEstrazione(Ini,,,"/") & " al " & DataEstrazione(Fin,,,"/"),1
   Scrivi
   Scrivi "RU  [Rc] Risultati al colpo",1
   Scrivi
   For R = 1 To 12
      Scrivi SiglaRuota(R) & " ",1,0
      Scrivi FormatSpace(EstrattoRitardo(R,CInt(D(1)),1,Fin),4,1),0,0,,2
      For Es = Ini To Fin
         P = Posizione(Es,R,D(1))
         If P > 0 Then Scrivi FormatSpace(Es - Ini + 1,5,1) & "°",1,0
      Next
      Scrivi
   Next
End Sub

:)
Ottimo grazie, si in effett
i meglio così
 

joe

Advanced Member >PLATINUM PLUS<
Una soluzione veloce è quella di eseguire lo script ...

enne volte cambiando di volta in volta l'anno

Per non dover fare tutto a mano ho tolto gli inputbox

e trasformato il resto del programma in una funzione richiamata dalla Sub Main

con i valori di Numero / Mese / Anno (dove l' Anno cambia di volta in volta)

Codice:
Option Explicit
Sub Main
   Dim A,D(3)
   D(1) = 67 ' Numero
   D(2) = 7 ' Mese
   For A = 2020 To 2024
      D(3) = A ' Anno
      Call Cerca(D)
      Scrivi  String (30,"="),1,1,,1 
   Next
End Sub
Sub Cerca(D)
   Dim N,I,F,P : I = 1 : F = EstrazioneFin
   Dim Ini,Fin,Es,R
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi "Anno " & FormatSpace(D(3),6,1),1
   Scrivi
   For Es = I To F
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then Ini = Es
      If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And(IsUltimaDelMese(Es) Or Es = F) Then Fin = Es
   Next
   Scrivi "Dal " & DataEstrazione(Ini,,,"/") & " al " & DataEstrazione(Fin,,,"/"),1
   Scrivi
   Scrivi "RU  [Rc] Risultati al colpo",1
   Scrivi
   For R = 1 To 12
      Scrivi SiglaRuota(R) & " ",1,0
      Scrivi FormatSpace(EstrattoRitardo(R,CInt(D(1)),1,Fin),4,1),0,0,,2
      For Es = Ini To Fin
         P = Posizione(Es,R,D(1))
         If P > 0 Then Scrivi FormatSpace(Es - Ini + 1,5,1) & "°",1,0
      Next
      Scrivi
   Next
End Sub

:)
 

joe

Advanced Member >PLATINUM PLUS<
In questa nuova versione, ho modificato l'input,

scambiando la richiesta dell'Anno con quella della Ruota.

Così cerca in tutti gli ultimi anni (20) evidenziando i risultati in tabella.

Codice:
Option Explicit
Sub Main
   Dim A,C,N,I,F,P : I = 1 : F = EstrazioneFin
   Dim D(3)
   Dim Ini,Fin,Es,R
   D(1) = InputBox("Inserisci NUMERO","RICERCA MENSILE",15)
   D(2) = InputBox("Inserisci MESE","RICERCA MENSILE",7)
   D(3) = InputBox("Inserisci RUOTA","RICERCA MENSILE",1)
   Dim T(26)
   R = CInt(D(3))
   Scrivi UCase(NomeRuota(R)) & Chr(13),1
   Scrivi "Numero " & FormatSpace(Format2(D(1)),4,1),1
   Scrivi "Mese " & FormatSpace(Format2(D(2)),6,1),1
   Scrivi
   T(1) = "Anno/Estr"
   For C = 1 To 25
      T(C + 1) = Format2(C) & "°"
   Next
   InitTabella(T)
   For A = Anno(EstrazioneFin) - 20 To Anno(EstrazioneFin) : D(3) = A
      AvanzamentoElab Anno(EstrazioneFin) - 20,Anno(EstrazioneFin),A
      Messaggio A
      ReDim V(31)
      V(1) = A
      For Es = I To F
         If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And IndiceMensile(Es) = 1 Then Ini = Es
         If Mese(Es) = CInt(D(2)) And Anno(Es) = CInt(D(3)) And(IsUltimaDelMese(Es) Or Es = F) Then Fin = Es
      Next
      For Es = Ini To Fin
         P = Posizione(Es,R,D(1))
         If P > 0 Then V(Es - Ini + 2) = "X"
      Next
      AddRigaTabella V
   Next
   CreaTabella
End Sub

:)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 27 luglio 2024
    Bari
    68
    18
    05
    80
    90
    Cagliari
    68
    80
    63
    13
    55
    Firenze
    57
    10
    34
    04
    02
    Genova
    17
    08
    51
    71
    76
    Milano
    73
    68
    62
    47
    53
    Napoli
    32
    76
    19
    08
    44
    Palermo
    71
    26
    48
    56
    12
    Roma
    16
    68
    12
    32
    88
    Torino
    19
    66
    61
    60
    52
    Venezia
    59
    39
    14
    42
    53
    Nazionale
    30
    41
    80
    50
    83
    Estrazione Simbolotto
    Nazionale
    02
    44
    22
    20
    30
Alto