Novità

Spazio Script in VbNet Per LottoProjectLB

L

LuigiB

Guest
Ciao Mike ,sicuramente hai un file archivio che non va bene , devi usare quello che ho messo io per le tue prove. io ho provato e non da errori..
tu lo hai modificato ? ne hai preso un oche gia avevi ? è importante che tutti i record delle estrazioni siano della stessa lunghezza.
 

lotto_tom75

Advanced Premium Member
Tom un esempio reale di quello che vorresti sarebbe di aiuto maggiore.
Penso sia fattibilissimo quello che potrei aver capito, ma è sempre meglio fare esempi reali per eviatre di fare cose e analisi diverse.

Ciao fammi sapere

Guarda questo è l'output dello script che ti posto sotto... e che fa quasi quello che ho chiesto anche se in questo caso non valuta tutti gli ambi generabili per ogni ruota analizzata ma solo il numero generabile dal gruppo base di partenza (es. 21 ambi per gruppo base di 7 elementi ecc...)

Combinazioni di classe 2 analizzate per punti 2 sulle ruote FI MI NA PA RO TO VE
La seguente lista mostra le prime Combinazioni In Base al valore di Ritardo
Range analizzato [00001] [ 1 ] 07.01.1871 fino a [10036] [ 13] 29.01.2022
Estrazioni analizzate totali : 10036

r Napoli formazione: 62.86 - FQ 22 - RA 1893 - RS 2020 - DIFF 127 - INCMAX 0 - contatore 1
r Milano formazione: 4.62 - FQ 20 - RA 1681 - RS 1681 - 0 - INCMAX 78 - contatore 2
r Firenze formazione: 11.65 - FQ 22 - RA 1654 - RS 2802 - DIFF 1148 - INCMAX 0 - contatore 3
r Firenze formazione: 83.86 - FQ 23 - RA 1341 - RS 1405 - DIFF 64 - INCMAX 0 - contatore 4
r Venezia formazione: 76.86 - FQ 28 - RA 1294 - RS 1294 - 0 - INCMAX 85 - contatore 5
r Roma formazione: 4.83 - FQ 25 - RA 1214 - RS 2112 - DIFF 898 - INCMAX 0 - contatore 6
r Venezia formazione: 62.86 - FQ 26 - RA 1201 - RS 1201 - 0 - INCMAX 248 - contatore 7
r Torino formazione: 65.86 - FQ 24 - RA 1122 - RS 1407 - DIFF 285 - INCMAX 0 - contatore 8
r Firenze formazione: 62.83 - FQ 25 - RA 1089 - RS 1737 - DIFF 648 - INCMAX 0 - contatore 9
r Napoli formazione: 62.83 - FQ 26 - RA 1065 - RS 1065 - 0 - INCMAX 70 - contatore 10
r Palermo formazione: 76.86 - FQ 26 - RA 1013 - RS 1185 - DIFF 172 - INCMAX 0 - contatore 11
r Palermo formazione: 62.76 - FQ 19 - RA 995 - RS 1613 - DIFF 618 - INCMAX 0 - contatore 12
r Roma formazione: 62.76 - FQ 25 - RA 981 - RS 1312 - DIFF 331 - INCMAX 0 - contatore 13
r Palermo formazione: 4.83 - FQ 23 - RA 970 - RS 1663 - DIFF 693 - INCMAX 0 - contatore 14
r Venezia formazione: 4.86 - FQ 25 - RA 891 - RS 1123 - DIFF 232 - INCMAX 0 - contatore 15
r Palermo formazione: 11.62 - FQ 21 - RA 835 - RS 1297 - DIFF 462 - INCMAX 0 - contatore 16
r Palermo formazione: 83.86 - FQ 24 - RA 825 - RS 2218 - DIFF 1393 - INCMAX 0 - contatore 17
r Firenze formazione: 62.76 - FQ 30 - RA 818 - RS 1128 - DIFF 310 - INCMAX 0 - contatore 18
r Venezia formazione: 76.83 - FQ 26 - RA 814 - RS 1418 - DIFF 604 - INCMAX 0 - contatore 19
r Palermo formazione: 11.86 - FQ 35 - RA 800 - RS 900 - DIFF 100 - INCMAX 0 - contatore 20
r Roma formazione: 11.76 - FQ 18 - RA 774 - RS 1265 - DIFF 491 - INCMAX 0 - contatore 21

Tempo trascorso: 00:00:20


code x spaziometria che genera l'output soprastante dandogli il relativo gruppo base di 7 elementi e selezionando le ruote volute come target di ruote separate.

Codice:
Option Explicit
Class clsSviluppo
   Private aBNumDaSvil
   Private nQNumeri
   Private nCombInt
   Private nClasse
   Private aRighe
   Private nQNumPerRiga
   Private aPuntatore
   Private nSviluppate
   Function InitSviluppo(aNumeri,Classe)
      nQNumeri = AlimentArrayNumDaSvil(aNumeri)
      nCombInt = Combinazioni(nQNumeri,Classe)
      nClasse = Classe
      nSviluppate = 0
      If nCombInt > 0 Then
         Call AlimentaArrayRighe
         Call InitArrayPuntatore
      End If
      InitSviluppo = nCombInt
   End Function
   Function GetQuantitaNumeriDaSvil
      GetQuantitaNumeriDaSvil = nQNumeri
   End Function
   Function GetStringaNumDaSvil
      Dim s,k
      s = ""
      For k = 1 To UBound(aBNumDaSvil)
         If aBNumDaSvil(k) Then
            s = s & Format2(k) & "."
         End If
      Next
      GetStringaNumDaSvil = RimuoviLastChr(s,".")
   End Function
   Private Sub InitArrayPuntatore
      Dim k
      ReDim aPuntatore(nClasse)
      For k = 1 To nClasse - 1
         aPuntatore(k) = 1
      Next
      aPuntatore(k) = 0
   End Sub
   Function GetComb(aComb)
      Dim nTmp,K,nPuntatore
      nPuntatore = nClasse
      nTmp = aPuntatore(nPuntatore) + 1
      Do While nTmp > nQNumPerRiga
         nPuntatore = nPuntatore - 1
         If nPuntatore <= 0 Then Exit Do
         nTmp = aPuntatore(nPuntatore) + 1
      Loop
      If nPuntatore > 0 Then
         For K = nPuntatore To nClasse
            aPuntatore(K) = nTmp
         Next
         ReDim aComb(nClasse)
         For K = 1 To nClasse
            aComb(K) = aRighe(K,aPuntatore(K))
         Next
         nSviluppate = nSviluppate + 1
         GetComb = True
      Else
         GetComb = False
      End If
   End Function
   Function GetQuantitaSviluppate
      GetQuantitaSviluppate = nSviluppate
   End Function
   Private Function AlimentArrayNumDaSvil(aNumeri)
      Dim k,q
      aBNumDaSvil = ArrayNumeriToBool(aNumeri)
      For k = 1 To 90
         If aBNumDaSvil(k) Then
            q = q + 1
         End If
      Next
      AlimentArrayNumDaSvil = q
   End Function
   Private Sub AlimentaArrayRighe
      Dim nRiga,k,aNumeri
      Call ArrayBNumToArrayNum(aBNumDaSvil,aNumeri)
      nQNumPerRiga =(nQNumeri - nClasse) + 1
      ReDim aRighe(nClasse,nQNumPerRiga)
      For nRiga = 1 To nClasse
         For k = nRiga To(nRiga + nQNumPerRiga) - 1 '(nQNumeri - nClasse) + nRiga
            aRighe(nRiga,(k - nRiga) + 1) = aNumeri(k)
         Next
      Next
   End Sub
   Sub OutputARighe
      Dim k,j,s
      For k = 1 To nClasse
         s = ""
         For j = 1 To nQNumPerRiga
            s = s & Format2(aRighe(k,j)) & "."
         Next
         Call Scrivi(Format2(k) & ") " & RimuoviLastChr(s,"."))
      Next
   End Sub
End Class
Sub Main
   Dim clSvi
   Dim nClasse
   Dim nSorte
   Dim k,j
   Dim sNumeri
   Dim idComb
   Dim nInizio,nFine
   Dim idValoreDaAna
   Dim sValoreUsato
   Dim CombTot
   Dim aRuote
   Set clSvi = New clsSviluppo
   Dim quantirisultati
   Dim Col_Ord
   Dim Tipo_Ord
   Dim QNS
   ReDim aNum(0)
   QNS = ScegliNumeri(aNum)
   nClasse = ScegliEsito(7,1,90)
   Call ScegliRuote(aRuote) ' ,BA_)
   nSorte = ScegliSorte
   idValoreDaAna = ScegliValoreDaAnalizzare(sValoreUsato)
   Col_Ord = CInt(InputBox("Colonna da ordinare (freq= 2; Rit= 3; RitMax= 4; Diff= 5; Incmax= 6).","colonna da ordinare ",2))
   Tipo_Ord = CInt(InputBox("Ordinamento (Crescente > 0 1; Decresc = 0).","Ordinamento ",1))
   nInizio = EstrazioneIni
   nFine = EstrazioneFin
   If nClasse > 0 And nSorte > 0 And nSorte <= nClasse And idValoreDaAna > 0 Then
      Call Messaggio("Sviluppo combinazioni di classe " & nClasse)
      CombTot = clSvi.InitSviluppo(aNum,nClasse)
      Call Messaggio("Lunghette totali da analizzare " & CombTot)
      ReDim aCombMigliori(CombTot,8)
      Call Messaggio("Statistica combinazioni in corso ")
      ReDim aCol(nClasse)
      Do While clSvi.GetComb(aCol) = True
      ReDim aRuotetmp(1)
      Dim y
      For y = 1 To UBound(aRuote)
      aRuotetmp(1) = aRuote(y)
   
         Call AnalisiComb(aCol,aRuotetmp,nSorte,aCombMigliori,nInizio,nFine,idValoreDaAna)
         k = k + 1
         If k Mod 1 = 0 Then
            Call Messaggio("Statistica combinazioni in corso " & k & " di " & CombTot)
            Call AvanzamentoElab(1,CombTot,k)
            If ScriptInterrotto Then Exit Do
         End If
        Next
      
      Loop
      Call Messaggio("")
      Call Scrivi("Combinazioni di classe " & nClasse & " analizzate per punti " & nSorte & " sulle ruote " & GetRuoteUsate(aRuote))
      Call Scrivi("La seguente lista mostra le prime " & quantirisultati & " Combinazioni In Base al valore di " & sValoreUsato)
      Call Scrivi("Range analizzato " & GetInfoEstrazione(nInizio) & " fino a " & GetInfoEstrazione(nFine))
      Call Scrivi("Estrazioni analizzate totali : " &(nFine + 1) - nInizio)
      Call Scrivi
      For k = 1 To UBound(aCombMigliori)
         ReDim ADati(8)
         ADati(1) = aCombMigliori(k,4)
         ADati(2) = aCombMigliori(k,1)
         ADati(3) = aCombMigliori(k,2)
         ADati(4) = aCombMigliori(k,3)
         ADati(5) = aCombMigliori(k,5)
         ADati(6) = aCombMigliori(k,6)
         ADati(7) = aCombMigliori(k,7)
         Dim ccolonna
         Dim contatore
         contatore = contatore + 1
         Dim diff
         If ADati(5) <= 10 Then
            Call Scrivi("r " & ADati(7) & " formazione: " & ADati(1) & " -" & " FQ " & ADati(2) & " -" & " RA " & ADati(3) & " -" & " RS " & ADati(4) & " -" & diff & " <font color=red bgcolor=yellow>" & ADati(5) & " -" & " INCMAX " & ADati(6) & "</font>" & " -" & " contatore " & contatore)
         Else
            Call Scrivi("r " & ADati(7) & " formazione: " & ADati(1) & " -" & " FQ " & ADati(2) & " -" & " RA " & ADati(3) & " -" & " RS " & ADati(4) & " - DIFF " & ADati(5) & " -" & " INCMAX " & ADati(6) & " -" & " contatore " & contatore)
         End If
      Next
      Call Scrivi
      Call Scrivi("Tempo trascorso: " & TempoTrascorso)
      Call Scrivi
   Else
      MsgBox "Selezionare la classe di sviluppo e la Sorte , " & _
      "si ricorda che la Sorte non puo essere maggiore della classe di sviluppo " & _
      "e che bisogna scegliere quale valore statistico considerare per " & _
      "alimentare la lista delle prime N Combinazioni desiderate da mostrare in output "
   End If
End Sub
Sub AnalisiComb(aNum,aRuotetmp,Sorte,aCombMig,nInizio,nFine,idValoreDaAna)
   Dim k,j
   Dim Rit
   Dim RitMax
   Dim Freq
   Dim Valore
   Dim diff
   Dim RetIncrRitMax
   Call StatisticaFormazioneTurbo(aNum,aRuotetmp,Sorte,Rit,RitMax,RetIncrRitMax,Freq,nInizio,nFine)
   diff = RitMax - Rit
   Select Case idValoreDaAna
   Case 1
      Valore = Freq
   Case 2
      Valore = Rit
   Case 3
      Valore = RitMax
   End Select
   For k = 1 To UBound(aCombMig)
      If Valore >= aCombMig(k,0) Then
         For j = UBound(aCombMig) To(k + 1) Step - 1
            aCombMig(j,0) = aCombMig(j - 1,0)
            aCombMig(j,1) = aCombMig(j - 1,1)
            aCombMig(j,2) = aCombMig(j - 1,2)
            aCombMig(j,3) = aCombMig(j - 1,3)
            aCombMig(j,4) = aCombMig(j - 1,4)
            aCombMig(j,5) = aCombMig(j - 1,5)
            aCombMig(j,6) = aCombMig(j - 1,6)
            aCombMig(j,7) = aCombMig(j - 1,7)
         Next
         aCombMig(k,0) = Valore
         aCombMig(k,1) = Freq
         aCombMig(k,2) = Rit
         aCombMig(k,3) = RitMax
         aCombMig(k,4) = StringaNumeri(aNum)
         aCombMig(k,5) = diff
         aCombMig(k,6) = RetIncrRitMax
         aCombMig(k,7) = NomeRuota(aRuotetmp(1))
         Exit For
      End If
   Next
End Sub
Function ScegliSorte()
   ReDim aVoci(4)
   aVoci(0) = "Estratto"
   aVoci(1) = "Ambo"
   aVoci(2) = "Terno"
   aVoci(3) = "Quaterna"
   aVoci(4) = "Cinquina"
   ScegliSorte = ScegliOpzioneMenu(aVoci,1,"Scegli Sorte") + 1
End Function
Function ScegliValoreDaAnalizzare(sValore)
   ReDim aVoci(4)
   Dim i
   aVoci(0) = "Frequenza"
   aVoci(1) = "Ritardo"
   aVoci(2) = "Ritardo massimo"
   aVoci(3) = "Differenza Aurea"
   aVoci(4) = "IncMax"
   i = ScegliOpzioneMenu(aVoci,0,"Quale valore considerare per l'ordinamento ? ")
   sValore = aVoci(i)
   ScegliValoreDaAnalizzare = i + 1
End Function
Function GetRuoteUsate(aRuote)
   Dim k
   Dim s
   For k = 1 To UBound(aRuote)
      s = s & SiglaRuota(aRuote(k)) & " "
   Next
   GetRuoteUsate = Trim(s)
End Function

In spazio script sarebbe ultra figo si potesse ordinare ogni colonna di parametro semplicemente cliccando sopra il relativo titolo di tabella e che appunto generasse in output non solo le prime formazioni integrali corrispondenti al numero massimo di sviluppo integrale bensì tutte quelle generabili dal gruppo base scelto (es. 21 x coppie integrali di 7 elementi) per ogni ruota esaminata.. Secondo l'esempio l'output corretto dovrebbe mostrare in modo ordinato per il parametro voluto tutti i 21 ambi generabili dalla 7ina base per ogni ruota...quindi se le ruote, come in questo caso fossero sette, un totale di 21x7 = 147 ambi ordinati per ritardo decrescente ad esempio con rispettiva ruota... una sotto l'altra...

questo output... dovrebbe continuare fino a mostrare tutti i 147 ambi dell'esempio... essendo

il gruppo base di 7 elementi
la classe di sviluppo integrale pari a 2
il gruppo di ruote separate da analizzare di 7 ruote

r Napoli formazione: 62.86 - FQ 22 - RA 1893 - RS 2020 - DIFF 127 - INCMAX 0 - contatore 1
r Milano formazione: 4.62 - FQ 20 - RA 1681 - RS 1681 - 0 - INCMAX 78 - contatore 2
r Firenze formazione: 11.65 - FQ 22 - RA 1654 - RS 2802 - DIFF 1148 - INCMAX 0 - contatore 3
r Firenze formazione: 83.86 - FQ 23 - RA 1341 - RS 1405 - DIFF 64 - INCMAX 0 - contatore 4
r Venezia formazione: 76.86 - FQ 28 - RA 1294 - RS 1294 - 0 - INCMAX 85 - contatore 5
r Roma formazione: 4.83 - FQ 25 - RA 1214 - RS 2112 - DIFF 898 - INCMAX 0 - contatore 6
r Venezia formazione: 62.86 - FQ 26 - RA 1201 - RS 1201 - 0 - INCMAX 248 - contatore 7
r Torino formazione: 65.86 - FQ 24 - RA 1122 - RS 1407 - DIFF 285 - INCMAX 0 - contatore 8
r Firenze formazione: 62.83 - FQ 25 - RA 1089 - RS 1737 - DIFF 648 - INCMAX 0 - contatore 9
r Napoli formazione: 62.83 - FQ 26 - RA 1065 - RS 1065 - 0 - INCMAX 70 - contatore 10
r Palermo formazione: 76.86 - FQ 26 - RA 1013 - RS 1185 - DIFF 172 - INCMAX 0 - contatore 11
r Palermo formazione: 62.76 - FQ 19 - RA 995 - RS 1613 - DIFF 618 - INCMAX 0 - contatore 12
r Roma formazione: 62.76 - FQ 25 - RA 981 - RS 1312 - DIFF 331 - INCMAX 0 - contatore 13
r Palermo formazione: 4.83 - FQ 23 - RA 970 - RS 1663 - DIFF 693 - INCMAX 0 - contatore 14
r Venezia formazione: 4.86 - FQ 25 - RA 891 - RS 1123 - DIFF 232 - INCMAX 0 - contatore 15
r Palermo formazione: 11.62 - FQ 21 - RA 835 - RS 1297 - DIFF 462 - INCMAX 0 - contatore 16
r Palermo formazione: 83.86 - FQ 24 - RA 825 - RS 2218 - DIFF 1393 - INCMAX 0 - contatore 17
r Firenze formazione: 62.76 - FQ 30 - RA 818 - RS 1128 - DIFF 310 - INCMAX 0 - contatore 18
r Venezia formazione: 76.83 - FQ 26 - RA 814 - RS 1418 - DIFF 604 - INCMAX 0 - contatore 19
r Palermo formazione: 11.86 - FQ 35 - RA 800 - RS 900 - DIFF 100 - INCMAX 0 - contatore 20
r Roma formazione: 11.76 - FQ 18 - RA 774 - RS 1265 - DIFF 491 - INCMAX 0 - contatore 21

Se non sono stato chiaro nell'esporre a quale tipo di script mi riferisca chiedi pure ragguagli ulteriori e cercherò di rimediare ;)

Intanto grazie per la disponibilità!

👋🙂
 

Mike58

Advanced Member >PLATINUM PLUS<
Ho preso quell'archivio che hai fornito tu , e stringaEstrattiFt mi da quell'errore, cosa che invece se prendo i numeri in blocco me li scrive.
Comunque se a te scrive vedrò quale possa essere il problemi in future applicazioni.

come puoi vedere in altra forma l'archivio lo scrive (anche se non aggiornato )

9995 - 128 - 26/10/2021 - 01.04.06.09.15.17.20.21.24.29.32.35.43.45.58.72.78.80.89.90 Punti Su Giocato : 11.22.33 = 0
9996 - 129 - 28/10/2021 - 02.05.06.11.23.24.32.48.51.52.54.57.64.70.77.78.83.84.87.88 Punti Su Giocato : 11.22.33 = 1
9997 - 130 - 30/10/2021 - 01.09.11.14.17.29.30.40.41.52.55.58.61.63.65.71.72.77.79.82 Punti Su Giocato : 11.22.33 = 1
9998 - 131 - 02/11/2021 - 07.10.11.15.16.33.35.42.45.47.48.61.62.72.77.78.84.85.86.89 Punti Su Giocato : 11.22.33 = 2
9999 - 132 - 04/11/2021 - 02.06.08.10.12.13.18.26.36.47.56.59.60.68.69.73.76.77.79.84 Punti Su Giocato : 11.22.33 = 0
10000 - 133 - 06/11/2021 - 05.07.14.15.17.18.20.22.26.32.44.46.51.57.59.60.76.78.84.86 Punti Su Giocato : 11.22.33 = 1
10001 - 134 - 09/11/2021 - 12.16.26.27.28.29.38.43.44.45.48.53.54.62.64.68.70.76.79.83 Punti Su Giocato : 11.22.33 = 0
10002 - 135 - 11/11/2021 - 07.12.18.22.27.31.33.36.37.38.41.43.55.57.62.63.69.73.74.79 Punti Su Giocato : 11.22.33 = 2
10003 - 136 - 13/11/2021 - 04.06.08.10.20.21.39.45.46.47.50.55.74.78.79.81.83.85.86.89 Punti Su Giocato : 11.22.33 = 0
10004 - 137 - 16/11/2021 - 03.09.11.16.21.23.24.26.31.32.33.36.37.43.48.51.54.55.70.88 Punti Su Giocato : 11.22.33 = 2
10005 - 138 - 18/11/2021 - 10.14.15.18.19.26.27.32.34.36.42.64.65.69.73.76.80.86.89.90 Punti Su Giocato : 11.22.33 = 0
 
L

LuigiB

Guest
Codice:
Class Script
    Sub Main()
        Dim sFileArc As String = "C:\Users\Mike58\Desktop\NewSpazioLight\Archivio\Estrazioni10L.csv "
        If ImpostaArchivioFT(sFileArc, 20, 90) Then
            Dim ini As Integer = EstrazioniArchivioFT
            Dim fin As Integer = EstrazioniArchivioFT
            Dim carattere   As String = ";"
            Dim es , p As Integer
            For es    = ini To fin
                For p  = 1 To 20
                    Scrivi(EstrattoFT(es,p))
                Next
                Scrivi (StringaEstrattiFT(es,carattere))
            Next
        End If
    End Sub
End Class

lo script
a me funziona perche ho sostituito il percorso e non mi ero accorto che nbel tuo c'è un caarattere blank alla fine che non ci deve essere ...
 

Mike58

Advanced Member >PLATINUM PLUS<
x Tom quello script e quella procedura è abbastanza complicata da riportare in vbnet.
Ci sono tante variabili e non sono sicuro di c
he tutte siano presenti in spaziolight.
magari se legge Luigi sarebbe un grande cosa averlo in spaziolight, anche se i tempi in vbscript sono anche ottimi.
Per ora è fuori dalla mia portata.
 
L

LuigiB

Guest
che sembra complicata va bene ma non fa uso di cose particolari legate a spaziometria ,credo che riportarla sia piu facile di quanto si pensi
 

Mike58

Advanced Member >PLATINUM PLUS<
a me funziona perche ho sostituito il percorso e non mi ero accorto che nbel tuo c'è un caarattere blank alla fine che non ci deve essere ...
No Luigi a me non funziona.
vedrò se mi capita con altri archivi FT. o csv di altre lotterie
Per ora la stringa estratti riesco a simularla in altri modi.
Grazie lo stesso
 
L

LuigiB

Guest
non ti funziona perche nel percorso che hai messo c'è un errore , se ci lascio l'errore che hai fatto tu mi da lo stesso messaggio che da a te
 

Mike58

Advanced Member >PLATINUM PLUS<
non ti funziona perche nel percorso che hai messo c'è un errore , se ci lascio l'errore che hai fatto tu mi da lo stesso messaggio che da a te
questo è il mio percorso quale sarebbe l'errore ?
Dim sFileArc As String = "C:\Users\Miche\Desktop\NewSpazioLight\Archivio\Estrazioni10L.csv"
 
L

LuigiB

Guest
come vedi alla fine c'è uno spazio .. prima delle virgolette
almeno prima era cosi ora lo hai cambiato ma ovviamente l ospazio non ci vuole ..

verifica che i lfile esista davvero nel percorso che hai usato ..

1643635280204.png
 

Mike58

Advanced Member >PLATINUM PLUS<
No Luigi users miche e quello giusto e l'archivio lo allaccia lo stesso anche con lo spazio del 1° percorso
scrive correttamente tutto in altro modo solo il codice stringaEstrattiFT va errore anche cambiando tipo di carattere.

Codice:
Class Script
    Sub Main()
        Dim sFileArc As String = "C:\Users\Miche\Desktop\NewSpazioLight\Archivio\Estrazioni10L.csv"
        If ImpostaArchivioFT(sFileArc, 20, 90) Then
            Dim ini As Integer = EstrazioniArchivioFT-10
            Dim fin As Integer = EstrazioniArchivioFT
            Dim aNum() , Nu(20) As Integer
            Dim carattere   As String = ";"
            Dim es , p As Integer
            Dim aN(3) As Integer
            For es  = ini To fin
                For p  = 1 To 20
                    Nu(p) = EstrattoFT(es,p)
                Next
                '---------------------------------
                aN(1) = 11
                aN(2) = 22
                aN(3) = 33
                '---------------------------------
                Dim Pt As Integer
                Pt = PuntiSuArray(aN,Nu)
                Scrivi (GetInfoEstrazioneFT(es) & " - " & StringaNumeri (Nu,,1) & " Punti Su Giocato : " & StringaNumeri (aN ) & " = " & Pt)
                'Scrivi (StringaEstrattiFT(es,carattere)) disattivo
            Next
        End If
    End Sub
End Class


9995 - 128 - 26/10/2021 - 01.04.06.09.15.17.20.21.24.29.32.35.43.45.58.72.78.80.89.90 Punti Su Giocato : 11.22.33 = 0
9996 - 129 - 28/10/2021 - 02.05.06.11.23.24.32.48.51.52.54.57.64.70.77.78.83.84.87.88 Punti Su Giocato : 11.22.33 = 1
9997 - 130 - 30/10/2021 - 01.09.11.14.17.29.30.40.41.52.55.58.61.63.65.71.72.77.79.82 Punti Su Giocato : 11.22.33 = 1
9998 - 131 - 02/11/2021 - 07.10.11.15.16.33.35.42.45.47.48.61.62.72.77.78.84.85.86.89 Punti Su Giocato : 11.22.33 = 2
9999 - 132 - 04/11/2021 - 02.06.08.10.12.13.18.26.36.47.56.59.60.68.69.73.76.77.79.84 Punti Su Giocato : 11.22.33 = 0
10000 - 133 - 06/11/2021 - 05.07.14.15.17.18.20.22.26.32.44.46.51.57.59.60.76.78.84.86 Punti Su Giocato : 11.22.33 = 1
10001 - 134 - 09/11/2021 - 12.16.26.27.28.29.38.43.44.45.48.53.54.62.64.68.70.76.79.83 Punti Su Giocato : 11.22.33 = 0
10002 - 135 - 11/11/2021 - 07.12.18.22.27.31.33.36.37.38.41.43.55.57.62.63.69.73.74.79 Punti Su Giocato : 11.22.33 = 2
10003 - 136 - 13/11/2021 - 04.06.08.10.20.21.39.45.46.47.50.55.74.78.79.81.83.85.86.89 Punti Su Giocato : 11.22.33 = 0
10004 - 137 - 16/11/2021 - 03.09.11.16.21.23.24.26.31.32.33.36.37.43.48.51.54.55.70.88 Punti Su Giocato : 11.22.33 = 2
10005 - 138 - 18/11/2021 - 10.14.15.18.19.26.27.32.34.36.42.64.65.69.73.76.80.86.89.90 Punti Su Giocato : 11.22.33 = 0
 

Mike58

Advanced Member >PLATINUM PLUS<
x Tom piccolo stesura ex novo
Giusto per cimentarsi.
sicuramente puoi vedere di immettere i parametri che vuoi ottenere.

Codice:
Class Script
    Sub Main
        Dim k As Integer
        Dim s ,T() As String
        Dim nClasse,nColonneTot,aNumeri() As Integer
        ReDim aNumeri(90)
        Dim aCol(),Ruote() ,r ,sorte  As Integer
        Dim ini As Integer = 1
        Dim fin As Integer = EstrazioniArchivio
        Dim rit,max,incr,fre,pre ,ubNum As Integer
        nClasse = 9 ' sviluppo in classe
        sorte = 2 ' sorte di verifica statistica
        ScegliNumeri(aNumeri)
        ubNum = UBound(aNumeri)
        ScegliRuote(Ruote )
        T = {" k " ," Sviluppo " , " Frequenze "," Presenze "," RitardoCoRRente ", "RitardoMax "," IncrMax "}
        Call InitTabella(T)
        'inizializza lo sviluppo
        nColonneTot = InitSviluppoIntegrale(aNumeri,nClasse)
        k = 0
        ReDim aCol(nClasse )
        ' ciclo che continua fiono a quando le colonne non finiscono
        Do While GetCombSviluppo  (aCol )
            k = k + 1 ' conteggio colonna corrente
            ' costruisco la stringa che contiene la colonna
            SerieStat (aCol,Ruote,sorte ,rit,max,fre,pre,incr,ini,fin)
            s = StringaNumeri(aCol)
            T = {k,s,fre,pre,rit,max,incr }
            Call AddRigaTabella(T)
            'Call Scrivi(s & vbTab & fre)
            Call Messaggio("Colonna " & k)
            If ScriptInterrotto Then Exit Do
        Loop
        Scrivi (StringaNumeri(aNumeri) &  " ( " & ubNum & " )" & "   Sviluppo In classe : " & nClasse  & " Su Ruote Unite " & ArrayRuoteToString(Ruote) )
        CreaTabella
    End Sub
End Class


71.72.73.81.82.83.84.85.86.87.88.89.90 ( 13 ) Sviluppo In classe : 9 Su Ruote Unite Ba

k
Sviluppo
Frequenze 6​
Presenze
RitardoCoRRente
RitardoMax
IncrMax
149​
71.72.73.82.83.85.86.87.90​
828​
729​
6​
92​
0​
154​
71.72.73.82.83.85.87.88.90​
831​
721​
6​
105​
0​
155​
71.72.73.82.83.85.87.89.90​
835​
729​
6​
108​
0​
582​
72.73.82.83.84.85.86.87.90​
835​
729​
6​
83​
0​
 
L

LuigiB

Guest
ok scaricato Funzionante

(y)👏

e comunque sei un mostro di bravura.
P.s. Che fine ha fatto Edoardo ??? la creatura bisogna crescerla.
no nso .. mi aveva detto che stava passando un periodo impegnativo ..io non ho certo voglia di rifare spaziometria :) mo gli script ce l iabbiamo messi e qyesto aspetto lo seguo...pero il programam dovrebeb portarl oavanti lui ..
 

Xeroxs

Advanced Member >PLATINUM<
Ciao,
Se Non chiedo Troppo si Può avere uno script per Spaziometria che crea il file aggiornato delle estrazioni del 10 e lotto Per LottoProjectLB, perchè su questo sono davvero lontano nel capire come fare.

Grazie.
 

Mike58

Advanced Member >PLATINUM PLUS<
Si Xerox si può fare , fai uno script con l'archivio 10 e lotto e scrivi le estrazioni che scorri in formato csv con il codice scriviFile in una directory preferita, avendo cura di rispettare i formati imposti dai file di testo.
Lo devo ancora fare per me, quando lo farò lo metterò disponibile.
 
L

LuigiB

Guest
questo dovrebbe essere quiello che ho usato io

Codice:
Option Explicit
Sub Main
   Dim nEstrInizio,nEstrFine
   Dim DataIni,DataFin
   Dim sFile
   Dim sChrSep
   Dim sDirDest
   
   MsgBox "Sostituisci nello script la directory dove verrà creato il file csv" & vbCrLf & "Poi elimina questo messaggio",vbInformation
    'sDirDest = "C:\dovemipare\"
   sDirDest = GetDirectoryAppData
   If DirectoryEsistente(sDirDest) Then
      ImpostaArchivio10ELotto(1)
      sChrSep = ";"
      sFile = AddSlash(sDirDest) & "Estrazioni10L.csv"
      If EliminaFile(sFile) Then
         nEstrInizio = 1
         nEstrFine = EstrazioniArchivioDL
         
           
         Call EsportaEstr(nEstrInizio,nEstrFine,sFile,sChrSep)
      End If
   Else
      MsgBox "Directory non trovata" & vbCrLf & sDirDest
   End If
End Sub
Sub EsportaEstr(nEstrInizio,nEstrFine,sFile,sChrSep)
   Dim k,f,idEstr
   Dim sRecord
   Dim nProgr
   Dim sDataCorr
   Dim r,e
  
  
   For k = nEstrInizio To nEstrFine
      Call Messaggio("Estrazione : " & k)
      idEstr = k
      ReDim aNum(0)
      If GetEstrazioneCompletaDL(idEstr,aNum) Then
         nProgr = nProgr + 1
         sDataCorr = Replace(DataEstrazioneDL(idEstr),".","/")
         sRecord = FormatSpace(nProgr,9,True) & sChrSep
         sRecord = sRecord & FormatSpace(IndiceAnnualeDL(idEstr),5,True) & sChrSep
       '  sRecord = sRecord & IndiceMensileDL(idEstr) & sChrSep
         
         sRecord = sRecord & sDataCorr & sChrSep
         
         For e = 1 To 20
               sRecord = sRecord & Format2(aNum(e)) & sChrSep
         Next
         sRecord = RimuoviLastChr(sRecord,sChrSep)
         Call ScriviFile(sFile,sRecord,False,True)
      Else
         Exit For
      End If
      If ScriptInterrotto Then Exit For
      Call AvanzamentoElab(nEstrInizio,nEstrFine,k)
   Next
   Call CloseFileHandle(sFile)
     ' Call LanciaFile(sFile)
  Scrivi "Esportato file " & sFile
  MsgBox "Fine",vbInformation
 
End Sub
Function AddSlash(s)
   If Right(s,1) <> "\" Then
      AddSlash = s & "\"
   Else
      AddSlash = s
   End If
End Function
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 30 aprile 2024
    Bari
    08
    67
    03
    02
    46
    Cagliari
    67
    01
    87
    84
    47
    Firenze
    31
    56
    40
    53
    50
    Genova
    03
    19
    45
    47
    25
    Milano
    71
    48
    51
    12
    13
    Napoli
    45
    19
    49
    76
    56
    Palermo
    58
    74
    86
    37
    67
    Roma
    26
    79
    47
    38
    58
    Torino
    32
    71
    39
    84
    80
    Venezia
    52
    31
    22
    42
    19
    Nazionale
    06
    83
    47
    20
    41
    Estrazione Simbolotto
    Genova
    03
    05
    45
    40
    19
Alto