Novità

Purtroppo il solo... "stop" non basta...

lotto_tom75

Advanced Premium Member
Mi trovo nella necessità di prendere SOLO il primo valore di RA minore (random) risultantemi da un particolare filtraggio indipendentemente da quanti ve ne siano minori rispetto al valore limite imposto di 10 estrazioni.

Ad esempio se nelle risultanze avessi

10 valori RA <= 10
e l'ultimo di questi avesse valore ra= 3 dovrei considerare soltanto quest'ultimo escludendo tutti gli altri...

Ho provato con un IF e STOP di questo tipo... (in questo esempio faccio finto che vi possano essere tre valori ra uguali rispettivamente 3, 2 e 1 e che appunto in base alla risultanza effettiva si scelga solo quello minore tra i tre. In questo caso ra 2). Ma purtroppo non basta. Anche se cerco di mostrare in outpu solo una delle tre risultanze con lo stop dopo ogni IF lo script mi mostra in output tutte e tre le risultanze con RA <= 10 vanificandomi pertanto il filtragio sperato :( :)

Codice:
If RetRit = 1 Then

Call Scrivi((cColonna.GetStringaNum) & " - " & RetRit)

'PROVA SCRIVI FILE

Dim sfile
Dim Intestazione1
Dim reportlunghettadoc

path = ".\"


sfile = path & "file" & nClasseLunghetta & ".txt"


reportlunghettadoc = cColonna.GetStringaNum

Call ScriviFile(sfile,reportlunghettadoc,False,True) ' scrivo anche sul file preposto

Stop


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

ElseIf RetRit = 2 Then

Call Scrivi((cColonna.GetStringaNum) & " - " & RetRit)

'PROVA SCRIVI FILE

path = ".\"


sfile = path & "file" & nClasseLunghetta & ".txt"


reportlunghettadoc = cColonna.GetStringaNum

Call ScriviFile(sfile,reportlunghettadoc,False,True) ' scrivo anche sul file preposto



Stop
'-----------------

ElseIf RetRit = 3 Then

Call Scrivi((cColonna.GetStringaNum) & " - " & RetRit)

'PROVA SCRIVI FILE

path = ".\"


sfile = path & "file" & nClasseLunghetta & ".txt"


reportlunghettadoc = cColonna.GetStringaNum

Call ScriviFile(sfile,reportlunghettadoc,False,True) ' scrivo anche sul file preposto




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

'ElseIf RetRit = 3 Then

'End If


'End If
Stop

End If

Next
'Call Scrivi("Tempo di elaborazione : " & FormattaSecondi(Timer - TimeStart))


CloseFileHandle(sfile)

Convinto di stare annaspando in un bicchier d'acqua... :rolleyes: GRAZIE a chiunque decida di buttarmi una ciambella o quanto meno un "bracciolo" :p:D e good saturday a tutti/e :)
 

lotto_tom75

Advanced Premium Member
Ho provato anche così...


Codice:
Select Case RetRit1

Case 1
Scrivi ("mi fermo al primo ritardo minimo 1")
Stop
Case 2
Scrivi ("mi fermo al primo ritardo minimo 2")
Stop
Case 3
Scrivi ("mi fermo al primo ritardo minimo 3")
Stop
Case Else
Scrivi ("Rilevati ritardi solo maggiori di 3 e mi fermo comunque")
Stop

End Select

Ma anche così lo Stop sembra non bastare...

Cosa posso mettere al posto dello Stop per far si che alla prima occorrenza utile con la "precedenza" di ricerca impostata nella Select lo script esca da quest'ultima? :rolleyes: Grazie
 

lotto_tom75

Advanced Premium Member
Anche così, provando ad inserire il primo valore utile in un vettore e ad uscire subito dopo, non funzia... :(:)

Codice:
Dim contatorexuscireallaprimaoccorrenzautile

ReDim vettore(0)

For contatorexuscireallaprimaoccorrenzautile = 1 To 10

Call Messaggio("sto cercando rit = " & contatorexuscireallaprimaoccorrenzautile & " esco appena lo trovo...")

If RetRit1 = contatorexuscireallaprimaoccorrenzautile Then

'Scrivi "trovato rit ... = " & contatorexuscireallaprimaoccorrenzautile

'provo ad aggiungere il Primo risultato trovato In un vettore e ad uscire dalla stessa ricerca Subito Dopo...


vettore(0) = contatorexuscireallaprimaoccorrenzautile

Scrivi "vettore 0 = " & vettore(0) & " ubound(vettore) " & UBound(vettore)



If ScriptInterrotto Or UBound(vettore) <> Null  Then Exit For


End If



Next


      Call AvanzamentoElab(0,UBound(aRighe),contatore)

      Dim x



      If ScriptInterrotto Then Exit For




      Next

      End If

      If ScriptInterrotto Then Exit For

      Next
 

Alien.

Advanced Premium Member
siamo-chiusi-per-ferie.jpg
 

Mike58

Advanced Member >PLATINUM PLUS<
Tom, non ho ben capito cosa devi cercare di preciso, ma se cerchi il valore Minimo o Massimo, ti basta mettere i relativi valori in una variabile dimensionata e utilizzare i relativi codici MinimoV o MassimoV e otterrai il relativo valore.

prova con una casualità di Numeri Random e vedi che sono estrapolati i relativi valori.

Codice:
Sub Main
   For x = 1 To 10
      y = NumeroCasuale(1,90)
      ReDim Preserve Num(x)
      Num(x) = y
   Next
   Scrivi StringaNumeri(Num)
   xy = MinimoV(Num,1,- 1)
   yy = MassimoV(Num)
   Scrivi "Numero Minimo.... " & xy
   Scrivi "Numero Massimo... " & yy
End Sub
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 18 aprile 2024
    Bari
    13
    39
    14
    70
    78
    Cagliari
    67
    65
    03
    87
    63
    Firenze
    85
    90
    19
    67
    78
    Genova
    60
    81
    39
    33
    13
    Milano
    90
    01
    83
    11
    88
    Napoli
    18
    12
    80
    29
    19
    Palermo
    50
    83
    40
    24
    12
    Roma
    74
    48
    75
    65
    37
    Torino
    80
    46
    44
    27
    30
    Venezia
    70
    16
    72
    03
    89
    Nazionale
    89
    22
    06
    87
    13
    Estrazione Simbolotto
    Genova
    28
    21
    43
    25
    17

Ultimi Messaggi

Alto