trivellatomariotretre33
Super Member >PLATINUM<
CIAO POTRESTE MODIFICARMI QUESTO LISTATO
CHE INVECE DI TROVARMI I RIPETUTI A OGNI ID MENSILE ,
ME LI TROVA AD'OGNI ESTRAZIONE , GRAZIE.
Sub Main()
'Rif. 0901_24b Beppe verifica ripet. su alcune estrazioni (prova)
'aggiunto IM e 2 ruote Master
Dim Vet(),stat(),Vet1(),Vet2()
DAT = InputBox("DA QUALE DATA INIZIARE"," INIZIO ","31/12/2019")
IM = CInt(InputBox("Indice mensile","INICE MENSILE",1))
r = CInt(InputBox("RUOTA DI RICERCA N° 1 ","PRIMA RUOTA",1)) '1 ruota
r1 = CInt(InputBox("RUOTA DI RICERCA N° 2 ","SECONDA RUOTA",10))'2 ruota
estr = CInt(InputBox("Numero di estrazioni in esame","ESTRAZIONI",18))'2 ruota
'estr = 18 ' <===== numero di estrazioni in esame
'r = 1 ' r<===== ruota in esame
ReDim Vet1(estr*5) 'ridimensiono il vettore in base al numero degli estratti che devo caricare
ReDim Vet2(estr*5)
ReDim Vet(estr*11)
caso = 0
fin = PrimaSuccessiva(DAT) ' <--- 31-12-2019
ini = fin -(estr) 'ini= EstrazioneFin-(estr-1) : fin = EstrazioneFin
'-------------------------------------------------- carico il vettore con gli estratti
For es = fin To 1 Step - 1
If IndiceMensile(es) = IM Then
caso = caso + 1
If caso < estr + 1 Then
Scrivi SiglaRuota(r) & " " & DataEstrazione(es) & " " &(es) & " " & StringaEstratti(es,r," "),0,0
For p = 1 To 5
n = n + 1 : Vet1 = Estratto(es,r,p)
Next
Scrivi Space(4) & SiglaRuota(r1) & " " & DataEstrazione(es) & " " &(es) & " " & StringaEstratti(es,r1," ") & " -> caso " & caso
For p1 = 1 To 5
n1 = n1 + 1 : Vet2(n1) = Estratto(es,r1,p1)
Next
End If
End If
Next
For i = 1 To UBound(Vet1)
Vet(i) = Vet1(i)
Next
For i = 1 To UBound(Vet2)
Vet(i + UBound(Vet1) + 1) = Vet2(i)
Next
'--------------------------------------------------- cerco i ripetuti
OrdinaMatrice Vet,1 ' <======= FONDAMENTALE ORDINARE CRESCENTA IL VETTORE
x = UBound(Vet)'verifico qual'è il limite maggiore del vettore e lo assegno ad x
ReDim stat(2,0) 'dimensiono la matrice stat a 2 righe e 0 colonne
For i = 1 To x
If Vet(i) > Vet(i - 1) Then
co = co + 1 'contatore colonne
ReDim Preserve stat(2,co) 'ridimensiono le colonne di stat via via che trovo nuovi num
stat(1,co) = Vet(i) 'carico il nuovo numero sulla riga 1 man mano che procedo
stat(2,co) = 1 'sulla riga 2 assegno 1 come frequenza provvisoria rilevata
For y = i + 1 To x 'creo le coppie dei numeri per il confronto
If Vet(i) = Vet Then stat(2,co) = stat(2,co) + 1 'se sono = incremento di 1 la freq sulla 2^riga
Next
End If
Next
'-----------------------------------------------------------OUTPUT DEI RISULTATI
Scrivi
Scrivi " La matrice finale filtrata -- Indice mensile " & IM,1
Scrivi " per visualizzare solo i ripetuti => " & NomeRuota(r) & " / "& NomeRuota(r1) & Chr(10),1
Scrivi Space(2) & "Num - Freq"
For i = 1 To co
If stat(2,i) > 2 Then Scrivi Space(3) & Format2(stat(1,i)) & FormatSpace(stat(2,i),5,1)
Next
End Sub
CHE INVECE DI TROVARMI I RIPETUTI A OGNI ID MENSILE ,
ME LI TROVA AD'OGNI ESTRAZIONE , GRAZIE.
Sub Main()
'Rif. 0901_24b Beppe verifica ripet. su alcune estrazioni (prova)
'aggiunto IM e 2 ruote Master
Dim Vet(),stat(),Vet1(),Vet2()
DAT = InputBox("DA QUALE DATA INIZIARE"," INIZIO ","31/12/2019")
IM = CInt(InputBox("Indice mensile","INICE MENSILE",1))
r = CInt(InputBox("RUOTA DI RICERCA N° 1 ","PRIMA RUOTA",1)) '1 ruota
r1 = CInt(InputBox("RUOTA DI RICERCA N° 2 ","SECONDA RUOTA",10))'2 ruota
estr = CInt(InputBox("Numero di estrazioni in esame","ESTRAZIONI",18))'2 ruota
'estr = 18 ' <===== numero di estrazioni in esame
'r = 1 ' r<===== ruota in esame
ReDim Vet1(estr*5) 'ridimensiono il vettore in base al numero degli estratti che devo caricare
ReDim Vet2(estr*5)
ReDim Vet(estr*11)
caso = 0
fin = PrimaSuccessiva(DAT) ' <--- 31-12-2019
ini = fin -(estr) 'ini= EstrazioneFin-(estr-1) : fin = EstrazioneFin
'-------------------------------------------------- carico il vettore con gli estratti
For es = fin To 1 Step - 1
If IndiceMensile(es) = IM Then
caso = caso + 1
If caso < estr + 1 Then
Scrivi SiglaRuota(r) & " " & DataEstrazione(es) & " " &(es) & " " & StringaEstratti(es,r," "),0,0
For p = 1 To 5
n = n + 1 : Vet1 = Estratto(es,r,p)
Next
Scrivi Space(4) & SiglaRuota(r1) & " " & DataEstrazione(es) & " " &(es) & " " & StringaEstratti(es,r1," ") & " -> caso " & caso
For p1 = 1 To 5
n1 = n1 + 1 : Vet2(n1) = Estratto(es,r1,p1)
Next
End If
End If
Next
For i = 1 To UBound(Vet1)
Vet(i) = Vet1(i)
Next
For i = 1 To UBound(Vet2)
Vet(i + UBound(Vet1) + 1) = Vet2(i)
Next
'--------------------------------------------------- cerco i ripetuti
OrdinaMatrice Vet,1 ' <======= FONDAMENTALE ORDINARE CRESCENTA IL VETTORE
x = UBound(Vet)'verifico qual'è il limite maggiore del vettore e lo assegno ad x
ReDim stat(2,0) 'dimensiono la matrice stat a 2 righe e 0 colonne
For i = 1 To x
If Vet(i) > Vet(i - 1) Then
co = co + 1 'contatore colonne
ReDim Preserve stat(2,co) 'ridimensiono le colonne di stat via via che trovo nuovi num
stat(1,co) = Vet(i) 'carico il nuovo numero sulla riga 1 man mano che procedo
stat(2,co) = 1 'sulla riga 2 assegno 1 come frequenza provvisoria rilevata
For y = i + 1 To x 'creo le coppie dei numeri per il confronto
If Vet(i) = Vet Then stat(2,co) = stat(2,co) + 1 'se sono = incremento di 1 la freq sulla 2^riga
Next
End If
Next
'-----------------------------------------------------------OUTPUT DEI RISULTATI
Scrivi
Scrivi " La matrice finale filtrata -- Indice mensile " & IM,1
Scrivi " per visualizzare solo i ripetuti => " & NomeRuota(r) & " / "& NomeRuota(r1) & Chr(10),1
Scrivi Space(2) & "Num - Freq"
For i = 1 To co
If stat(2,i) > 2 Then Scrivi Space(3) & Format2(stat(1,i)) & FormatSpace(stat(2,i),5,1)
Next
End Sub