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ì 09 ottobre 2025
    Bari
    09
    10
    42
    73
    59
    Cagliari
    14
    65
    66
    79
    83
    Firenze
    71
    15
    32
    04
    61
    Genova
    08
    02
    18
    87
    84
    Milano
    33
    08
    84
    80
    41
    Napoli
    29
    81
    50
    17
    83
    Palermo
    14
    28
    74
    19
    60
    Roma
    76
    32
    55
    67
    90
    Torino
    07
    02
    66
    15
    70
    Venezia
    34
    73
    70
    40
    09
    Nazionale
    87
    79
    36
    46
    02
    Estrazione Simbolotto
    25
    07
    23
    17
    30
Indietro
Alto