Novità

AIUTO , SE POTETE, AGGIORNAMENTO 10ELOTTO5MIN

Ma scusa Luigi,

senza che Ti arrabbi....se tutto quello che ho scritto è ovvio perchè la prassi :

If aEstr(k).strctData.nNumEstrazione > aEstr(NumEstr).strctData.nNumEstrazione Then

è sbagliata??


l'errore sta forse in (k) ???


Più che perdermi mi sa che sto proprio affogando nel bicchiere d'acqua.....:(
 
ciao Moro , mica mi sono arrabbiato ..
l'errore sta nel fatto che stai usando NumEstr (quello che contiene l'ultimo numero estr in archivio) come indice dell'array aEstr ...
invece in aEstr ci sono tutte le estrazioni della pag html che hai appena letto e numestr da solo gia contiene l'ultimo numero che avevi ...
quindi se da una parte del confronto è giusto scrivere
If aEstr(k).strctData.nNumEstrazione >
dall'altra è sbagliato scrivere
aEstr(NumEstr).strctData.nNumEstrazione Then

vedi che NumEstr lo stai usando come indice di un array ?
 
Essendo già lui solo una variabile che contiene l'ultimo numestr che avevo allora potrebbe diventare qualcosa tipo:

Codice:
If aEstr(k).strctData.nNumEstrazione > NumEstr Then


inutile dire che hai ragione Tu....:)
 
Mi fa piacere leggere "perfetto" scritto da Te Luigi, ma adesso ho l'ultimo scoglio da passare...la famosa : SalvaEstrazioneDL

L'help di spazioscript non mi aiuta particolarmente, devo studiare come passargli le variabili, giusto?
 
la parola studiare come passargli le variabili mi sembra eccessiva .. dopo che lo avrai fato ti renderai conto della banalita.
Scrivimi qui i parametri di salvaestrazionidl e spiegami a che servono.
 
Cavolo Luigi, anche l'interrogazione mi sono beccato!

comunque ok, ci sto!

Dunque per l'utilizzo della funzione SalvaestrazioneDL abbiamo bisogno di 4 parametri che sono:

- Numeri estratti;
- Data Estrazione (Formato gg/mm/yyyy);
- Numero Estrazione;
- Percorso del file completo dove è situato l'archivio "BaseDati10Elotto5M.Dat".

Quindi, parlando in codice ci serve una cosa del tipo:

Codice:
Dim sFile As String
Dim sNumeri As Integer
Dim sData As Integer
Dim sNumEst As Integer

sFile = GetDirectoryAppData & "BaseDati10Elotto5M.Dat"

SalvaEstrazioneDL(sNumeri, sData, sNumEst, sFile)

Questo è quello che ho appreso studiando questa funzione....


Son sulla strada giusta?
 
si ma sbagli il tipo di variabile da usare per passare i numeri.. quanti sono i numeri di un estrazione ? mi risulta 20 ..
Dim sNumeri As Integer dichiara una variabile di tipo integer , dal nome si dovrebbe capire che serve per passare i numeri estratti.
Ebbene quanti valori puo contenere una variabile di tipio integer ?
E' esatto usare questa variabile ?

ciao
 
Le variabili di tipo integer indicano un numero intero, quindi avendo 20 numeri per ogni estrazione non è corretto usare la variabile di tipo integer, più corretto è usare allora una variabile del tipo string che puo' contenere un'insieme di caratteri o numeri.

corretto?
 
no, ovvero si si potrebbe ma non è il modo che usa la funzione salvaestrazionidl.
Riporta qui i parametri di quella funzione esattamente come sono chiamati e per ognuno di loro incolla la descrizione/spiegazione , prendila ovviamente dall'help di spazioscript.
magari facendo questo potrebbe pure venirti il lampo di genio .-)
 
Intendi questo ?

Parametri:


aNumeri
Matrice da dichiarare con

Dim aNumeri(11 , 5)

da 1 a 10 le normali ruote

l'indice 11 identifica la nazionale

Alimentare la matrice con i numeri dell'estrazione che si vuole salvare


Data = Data dell'estrazione in formato(giorno/mese/anno)

NumEstr = Numero dell'estrazione come definito dal gestore

sFile = Percorso completo del file nel quale si va a scrivere

nIdEst = se lasciato a 0 aggiunge una nuova estrazione nel file (se il file non esiste verra creato) se valorizzato con un numero valido maggiore di 0 e inferiore o uguale alle estrazioni contenute nel file la funzione sovrascriverà l'estrazione identificata da questo paramentro

I lampi di genio mi sà che non sono il mio forte...:)
 
Ciao Luigi, buongiorno prima di tutto!

il aNumeri se non erro è un array...

In attesa di una Tuo intervento io intanto ho provato a metter giù un qualcosa di questo tipo :

Codice:
sFile = GetDirectoryAppData & "BaseDati10Elotto5M.Dat"

If sDataUltimaEstrArchivio = sDataCorrente Then
        For k = 1 To UBound(aEstr)
            If aEstr(k).strctData.nNumEstrazione > NumEstr Then
                For n = 1 To 20
                sNumeri = aEstr(k).aNum(n)
                '--test debug
                Debug.Print sNumeri
                '--end debug
                Next
                sData = sDataCorrente
                sNumEst = aEstr(k).strctData.nNumEstrazione
                '--test debug
                Debug.Print sData
                Debug.Print sNumEst
                Debug.Print sFile
                '--end debug
                'SalvaEstrazioneDL(sNumeri, sData, sNumEst, sFile)             
            End If
        Next
Else
        'For k = 1 To UBound(aEstr)
        '
        'Next
End If

Nell'immediata, come da debug.print ricevo questo :

Codice:
6
12
16
20
21
22
27
37
39
40
44
52
56
60
68
70
72
80
84
89
25/03/2014
 288 
C:\Users\utente\AppData\Roaming\Spaziometria\BaseDati10Elotto5M.Dat

sembra la strada corretta....credo. :)
 
Ultima modifica:
ciao Moro , buongiorno a te.
Precisazione , nell'help di spazioscript sono documentate le funzioni riferite al lotto. Quelle del 10 e lotto sono simili ma non uguali.
Ad esempio SalvaEstrazioneDL nel parametro relativo ai numeri ha un array ad una sola dimesione mentre nel lotto è a due dimensioni.
Questo perche nel lotto ci sono le ruote e ogni ruota ha i suoi numeri.
Detto questo il 10 e lotto è piu semplice non avendo le ruote l'array ceh contiene i numeri èun array da dichiarare con

dim aNumeri (20)

ogni elemento dell'array contiene uno dei numeri di quell'estrazione , una volta riempito l'array si passa allla funzione SalvaEstrazioniDL.

Da cio si evince che sNumeri as string non è adatto e non è quello che la funzione si aspetta. Lei si aspetta aNumeri.

ciao
 
Ciao Luigi,

avevo visto che nell'help di spazioscript il tutto è riferito al lotto.

Le altre funzioni del 10 e lotto, win for life, super enalotto etc sono simili ma non in tutto.

E' vero che per il 10 e lotto è più semplice perchè non abbiamo le ruote, ma resta complesso (per me, ovvio) il discorso dell'array da dichiarare con

Dim aNumeri(20)

o meglio, dichiararlo non è difficile, lo è per me capire come popolare l'array per passarlo poi a SalvaEstrazioniDL...
 
il nuovo array contiene 20 elementi , tanti quanti ne contiene l'array membro di aEstr , quindi secondo te come si fa a copiare tuttti e 20 gli elementi dell'array membro di aEstr dentro questo nuovo ? considera che lo hai gia fatto solo che hai usato sNumeri che non andava bene ...
 
Ultima modifica di un moderatore:
quindi andrebbe a diventare così :

Codice:
Dim aNumeri(20)



For n = 1 To 20
     aNumeri = aEstr(k).aNum(n)
Next

giusto ?
 
e infine sono arrivato a questo :

Codice:
Private Sub SalvaEstrazioni(aEstr() As STRUCT_ESTRAZIONE_10LOTTO, sDataUltimaEstrArchivio As String, sDataCorrente As String, NumEstr As Long)
   Dim k As Long
   Dim n As Long
   Dim sFile As String
   Dim sData As String
   Dim sNumEst As Integer
   Dim aNumeri(20) As String
   
   sFile = GetDirectoryAppData & "BaseDati10Elotto5M.Dat"

   If sDataUltimaEstrArchivio = sDataCorrente Then
        For k = 1 To UBound(aEstr)
            If aEstr(k).strctData.nNumEstrazione > NumEstr Then
                For n = 1 To 20
                aNumeri(n) = aEstr(k).aNum(n)
                Next
                sData = sDataCorrente
                sNumEst = aEstr(k).strctData.nNumEstrazione
                Call SalvaEstrazioneDL(aNumeri, sData, sNumEst, sFile)
            End If
        Next
    Else
        For k = 1 To UBound(aEstr)
                For n = 1 To 20
                aNumeri(n) = aEstr(k).aNum(n)
                Next
                sData = sDataCorrente
                sNumEst = aEstr(k).strctData.nNumEstrazione
                Call SalvaEstrazioneDL(aNumeri, sData, sNumEst, sFile)
        Next
    End If
End Sub

E FUNZIONA !!!!
 
bravissimo , ma il compito mica è finito ... allora qui ci farebbe comodo una funzione che riceva due parametri , il primo parametro deve poter contenere un elemento di aestr , il secondo parametro deve poter contenere l'array aNumeri.
A tale funzione passeremo l'elemento K dell'array aEstr , e l'array aNum Dimensionato a 0 , la funzione ridimensionera a 20 aNum e lo riempira
con i numeri presi dall'elemento di aEstr.
Tutte cose che abiamo gia fatto quindi ci dovresti riuscire a farmi questa funzione.
Questa funzione andra lanciata al posto del ciclo che hia fatto. Anche se funziona gia cosi è meglio farlo anche per fissarti i concetti e vedere come riapplicarli.
 
Ultima modifica di un moderatore:
Luigi, sei proprio come i professori!

Sul più bello quando uno pensa, finalmente c'è l'ho fatta....esce un nuovo quesito da risolvere!

Non mi tiro certo indietro e implementerò anche quest'ultima funzione!

Ora devo prima studiare bene, come ogni volta, quello che mi hai chiesto tu..e poi devo farlo ahimè :)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 20 maggio 2025
    Bari
    12
    60
    87
    01
    02
    Cagliari
    36
    24
    53
    35
    16
    Firenze
    55
    51
    21
    18
    35
    Genova
    05
    31
    25
    82
    45
    Milano
    81
    45
    88
    35
    31
    Napoli
    11
    54
    68
    70
    82
    Palermo
    74
    69
    90
    57
    25
    Roma
    57
    09
    16
    54
    79
    Torino
    24
    07
    88
    51
    79
    Venezia
    41
    13
    07
    56
    19
    Nazionale
    81
    12
    83
    76
    01
    Estrazione Simbolotto
    Milano
    40
    09
    27
    33
    20
Indietro
Alto