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
    venerdì 10 ottobre 2025
    Bari
    50
    79
    52
    88
    45
    Cagliari
    38
    69
    86
    25
    05
    Firenze
    86
    43
    66
    38
    31
    Genova
    33
    13
    45
    77
    09
    Milano
    01
    22
    59
    31
    54
    Napoli
    65
    70
    14
    53
    71
    Palermo
    51
    67
    82
    74
    84
    Roma
    46
    18
    33
    88
    08
    Torino
    78
    20
    23
    05
    65
    Venezia
    58
    33
    40
    51
    89
    Nazionale
    90
    74
    51
    41
    40
    Estrazione Simbolotto
    36
    37
    35
    21
    31
Indietro
Alto