Buongiorno a tutti!
Per scuola devo fare un esercizio di statistica sulle medie campionarie e per farle tutte mi sono servito di una macro che mi individua tutte le medie campionarie e le loro frequenze.
Vi posto la macro così potete dirmi dove ho sbagliato perchè mi stampa il primo numero e poi gli altri no.
Sembra quasi che l'IF dentro i cicli FOR non mi dia mai true. Però in teoria quello che ho fatto dovrebbe essere giusto, spero!codice:Sub CalcolaCamp() Dim i As Double, j As Integer, k As Integer, row As Integer, numCor As Double, freq As Integer row = 11 i = Worksheets("Foglio1").Cells(2, 1).Value Do While i <= Worksheets("Foglio1").Cells(7, 1).Value freq = 0 numCor = 0 For j = 1 To 42 For k = 1 To 6 If i = Int(Worksheets("Foglio1").Cells(j + 11, k + 1).Value * 10) / 10 Then freq = freq + 1 numCor = i End If Next k Next j If numCor <> 0 Then Worksheets("Foglio1").Cells(row, 9) = numCor Worksheets("Foglio1").Cells(row, 10) = freq row = row + 1 End If i = i + 0.1 Loop End Sub
Ho provato anke a modificare l'incremento della variabile i a 0.5 invece che 0.1: funziona ma solo con i numeri che nel foglio risultano interi. Comunque in questo caso è logico!!!
Ma perchè con 0.01 non lo fa?
Vi prego aiutatemi perchè non riesco a capire lo sbaglio!
Ciao!!!

Rispondi quotando