Novità

Aiuto da Mike58 x modifica script

  • Creatore Discussione Creatore Discussione lota
  • Data di inizio Data di inizio

lota

Super Member >PLATINUM<
Ciao a Tutti x Mike58 gentilmente potresti ( se possibile) modificare questo tuo script e fare in modo di poter scegliere inizio e termine date di ricerca a scelta?

Grazie in anticipo





Sub Main()

Dim numero(10),ruota(1),sorte

sorte = CInt(InputBox("Quale sorte verificare ",,1))

'...........................................................................

ii = InputBox("DIGITA NUMERI SEPARATI DA VIRGOLA ",,"1.2.3.4,5.6")

ReDim num(0)

Call SplitByChar(ii,".",num) ' split carattere separatore

'---------------------------------------------------------------------------

nStart = Timer ' partenza tempo di elaborazione

'ScegliNumeri(num)

Ini = EstrazioneIni

fin = EstrazioneFin

diff = fin - Ini + 1

Scrivi"Statistica Veloce su combinazione di Numeri scelti" & " ",True,False,6,0,3

Scrivi" " & StringaNumeri(num) & " ",True,False,2,4,3

Scrivi" Per sorte..." & " " & NomeSorte(sorte) & " ",True,True,3,0,3

Scrivi String(130,"=")

Scrivi " Dalla data..." & DataEstrazione(Ini) & " alla data..." & DataEstrazione(fin) & " - Estrazioni Totali " & DIFF,1

Scrivi String(130,"=")

Scrivi

'--------- crea tabella---------------

ReDim atitoli(14)

atitoli(1) = " Ruota "

'atitoli(2) = " Combinazione "

atitoli(3) = " RD1 "

atitoli(4) = " RD2 "

atitoli(5) = " RD3 "

atitoli(6) = " RD4 "

atitoli(7) = " RD5 "

atitoli(8) = " Ritardo attuale "

atitoli(9) = " Ritardo Storico "

atitoli(10) = " incr. storico "

atitoli(11) = " Frequenza "

atitoli(12) = " - esito - "

atitoli(13) = " - stringa Esito - "

atitoli(14) = " data estraz.uscita "

' inizializzo la tabella

Call InitTabella(atitoli,1,,3,5)

For r = 1 To 12

'If r = 11 Then r = 12

ruota(1) = r

Call AvanzamentoElab(Ini,fin,n)

If ScriptInterrotto Then Exit For

Call StatisticaFormazione(num,ruota,sorte,rit,ritmax,incrRitMax,freq,Ini,fine)

Call VerificaEsito(num,ruota,fin - rit,sorte,1,,retesito,retcolpi,retestratti,retidestr)

'----- calcolo valori in tabella --------------

ReDim avalori(14)

avalori(1) = NomeRuota(r)

avalori(3) = RitDiPos(num,1,ruota)

avalori(4) = RitDiPos(num,2,ruota)

avalori(5) = RitDiPos(num,3,ruota)

avalori(6) = RitDiPos(num,4,ruota)

avalori(7) = RitDiPos(num,5,ruota)

avalori(8) = rit

avalori(9) = ritmax

avalori(10) = incrRitMax

avalori(11) = freq

avalori(12) = retesito

avalori(13) = retestratti

If retesito <> "" Then avalori(14) = DataEstrazione(retidestr)

If retesito = "" Then avalori(14) = " -- "

Call AddRigaTabella(avalori,,,3,,"arial black")

If r = 11 Then Call SetColoreCella(11,3,1)

Next

Call SetTableWidth("100%")

'Call CreaTabella()

scegliTabella

Scrivi " Script By Mike58 ",1,- 1,6

nend = Timer

Call Scrivi("Tempo di elaborazione : " & FormattaSecondi((nend + 1) - nstart))

End Sub

Function RitDiPos(num,pos,ruota)

ReDim apos(5)

ReDim aruota(1)

ReDim anum(1)

anum(1) = num

apos(pos) = True

aruota(1) = ruota

RitDiPos = RitardoCombinazione(ruota,num,1,0,apos)

End Function

Function scegliTabella()

ReDim Voci(2)

Voci(1) = "Tabella Normale"

Voci(2) = "tabella Ordinabile"

scegliTabella = ScegliOpzioneMenu(Voci,01,"seleziona tabella")

If scegliTabella = 1 Then Call CreaTabella()

If scegliTabella = 2 Then Call CreaTabellaOrdinabile

End Function

Function FormattaSecondi(s)

'Questa Function trasforma il numero di secondi passato come parametro in una stringa

' passando i secondi si ottengono ore minuti e secondi in formato hh:mm:ss

' s ---> Numero di secondi da formattare

' ritorna una stringa il cui formato è hh:mm:ss (la function non funziona se in totale abbiamo piu di 99 ore )

Dim hh

Dim Mm

Dim Ss

Dim TimeStr

hh = s \ 3600

Mm =(s Mod 3600) \ 60

Ss = s -((hh * 3600) +(Mm * 60))

TimeStr = Format2(hh) & ":" & Format2(Mm) & ":" & Format2(Ss)

FormattaSecondi = TimeStr

End Function
 
Per tutti, quando si posta uno script mettetelo negli appositi code # ed incollatelo dentro al code, altrimenti questo viene copiato sformattato ed i codici risultano attaccati tra loro e quindi illeggibili.

comunque la correzione è semplice.

Codice:
Sub Main()
 Dim numero(10),ruota(1),sorte
 sorte = CInt(InputBox("Quale sorte verificare ",,1))
 '...........................................................................
 ii = InputBox("DIGITA NUMERI SEPARATI DA VIRGOLA ",,"1.2.3.4,5.6")
 ReDim num(0)
 Call SplitByChar(ii,".",num) ' split carattere separatore
 '---------------------------------------------------------------------------
 nStart = Timer ' partenza tempo di elaborazione
 'ScegliNumeri(num)
 Call ScegliRange(Ini,fin,EstrazioneIni,EstrazioneFin)
 'Ini = EstrazioneIni
 'fin = EstrazioneFin
 diff = fin - Ini + 1
 Scrivi"Statistica Veloce su combinazione di Numeri scelti" & "   ",True,False,6,0,3
 Scrivi"  " & StringaNumeri(num) & "  ",True,False,2,4,3
 Scrivi"  Per sorte..." & "   " & NomeSorte(sorte) & "  ",True,True,3,0,3
 Scrivi String(130,"=")
 Scrivi " Dalla data..." & DataEstrazione(Ini) & " alla data..." & DataEstrazione(fin) & "  - Estrazioni Totali " & DIFF,1
 Scrivi String(130,"=")
 Scrivi
 '--------- crea tabella---------------
 ReDim atitoli(14)
 atitoli(1) = "   Ruota   "
 'atitoli(2) = "   Combinazione    "
 atitoli(3) = " RD1 "
 atitoli(4) = " RD2 "
 atitoli(5) = " RD3 "
 atitoli(6) = " RD4 "
 atitoli(7) = " RD5 "
 atitoli(8) = "  Ritardo attuale  "
 atitoli(9) = "  Ritardo Storico  "
 atitoli(10) = " incr. storico "
 atitoli(11) = "  Frequenza  "
 atitoli(12) = "   - esito -   "
 atitoli(13) = "   -  stringa Esito  -    "
 atitoli(14) = "    data estraz.uscita     "
 ' inizializzo la tabella
 Call InitTabella(atitoli,1,,3,5)
 For r = 1 To 12
  'If r = 11 Then r = 12
  ruota(1) = r
  Call AvanzamentoElab(Ini,fin,n)
  If ScriptInterrotto Then Exit For
  Call StatisticaFormazione(num,ruota,sorte,rit,ritmax,incrRitMax,freq,Ini,fine)
  Call VerificaEsito(num,ruota,fin - rit,sorte,1,,retesito,retcolpi,retestratti,retidestr)
  '----- calcolo valori in tabella --------------
  ReDim avalori(14)
  avalori(1) = NomeRuota(r)
  avalori(3) = RitDiPos(num,1,ruota)
  avalori(4) = RitDiPos(num,2,ruota)
  avalori(5) = RitDiPos(num,3,ruota)
  avalori(6) = RitDiPos(num,4,ruota)
  avalori(7) = RitDiPos(num,5,ruota)
  avalori(8) = rit
  avalori(9) = ritmax
  avalori(10) = incrRitMax
  avalori(11) = freq
  avalori(12) = retesito
  avalori(13) = retestratti
  If retesito <> "" Then avalori(14) = DataEstrazione(retidestr)
  If retesito = "" Then avalori(14) = " -- "
  Call AddRigaTabella(avalori,,,3,,"arial black")
  If r = 11 Then Call SetColoreCella(11,3,1)
 Next
 Call SetTableWidth("100%")
 'Call CreaTabella()
 scegliTabella
 Scrivi " Script By Mike58 ",1,- 1,6
 nend = Timer
 Call Scrivi("Tempo di elaborazione : " & FormattaSecondi((nend + 1) - nstart))
End Sub
Function RitDiPos(num,pos,ruota)
 ReDim apos(5)
 ReDim aruota(1)
 ReDim anum(1)
 anum(1) = num
 apos(pos) = True
 aruota(1) = ruota
 RitDiPos = RitardoCombinazione(ruota,num,1,0,apos)
End Function
Function scegliTabella()
ReDim Voci(2)
Voci(1) = "Tabella Normale"
Voci(2) = "tabella Ordinabile"
scegliTabella = ScegliOpzioneMenu(Voci,01,"seleziona tabella")
If scegliTabella = 1 Then Call CreaTabella()
If scegliTabella = 2 Then Call CreaTabellaOrdinabile
End Function

Function FormattaSecondi(s)
 'Questa Function trasforma il numero di secondi passato come parametro in una stringa
 ' passando i secondi si ottengono ore  minuti e secondi  in formato hh:mm:ss
 ' s ---> Numero di secondi da formattare
 ' ritorna una stringa il cui formato è hh:mm:ss (la function non funziona se in totale abbiamo piu di 99 ore )
 Dim hh
 Dim Mm
 Dim Ss
 Dim TimeStr
 hh = s \ 3600
 Mm =(s Mod 3600) \ 60
 Ss = s -((hh * 3600) +(Mm * 60))
 TimeStr = Format2(hh) & ":" & Format2(Mm) & ":" & Format2(Ss)
 FormattaSecondi = TimeStr
End Function
 
Ciao Mike58 intanto grazie della risposta, poi non ho ben compreso cosa dovrei fare e se lo script è quello corretto
 
Quando postate uno script è sempre meglio metterlo nel code dedicato,icona #, compare un code
Codice:
 incollare qui
poi da spaziometria selezionare icona seleziona tutto e icona copia,
e dentro al code incolla.

Sarà cosi perfettamente incollato senza perdere la formattazione.

Poi non so se ti riferisci anche alla correzione postata, ti ho messo la finestra ScegliRange con il quale puoi determinare tu inizio e fine.

Ciao
 
Ultima modifica:
Ciao Mike58 chiarissimo anche x un niubbo come me. Tutto funziona perfettamente grazie ancora x disponibilità e gentilezza. Saluti
 
ogni tanto si impara qualcosa di nuovo, incuriosito dal sostantivo Niubbo sono andato a cercarlo


niubbo
niùb·bo/
sostantivo maschile
  • Nel gergo di Internet, utente nuovo e inesperto; part., chi frequenta per la prima volta una comunità virtuale rivelando la propria inesperienza e ignoranza delle regole.
ok.... Ciao
 
Grazie tante Mike58 adesso tutti lo sanno che sono scarso mannaggia :o

naturalmente scherzo ancora grazie per tutto quello che fai x noi. Saluti :D ;)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 21 maggio 2026
    Bari
    88
    65
    11
    87
    59
    Cagliari
    05
    64
    45
    80
    74
    Firenze
    37
    56
    25
    19
    36
    Genova
    29
    31
    90
    15
    17
    Milano
    73
    61
    45
    85
    48
    Napoli
    21
    85
    29
    48
    77
    Palermo
    40
    02
    66
    87
    51
    Roma
    23
    68
    57
    60
    26
    Torino
    44
    04
    76
    05
    57
    Venezia
    79
    86
    19
    29
    40
    Nazionale
    33
    54
    75
    39
    63
    Estrazione Simbolotto
    Milano
    27
    16
    30
    21
    26
Indietro
Alto