Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Problema con Excel VBA

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    84

    Problema con Excel VBA

    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.

    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
    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!

    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!!!

  2. #2
    Utente di HTML.it L'avatar di luck
    Registrato dal
    Oct 2004
    Messaggi
    550
    ma cosa deve fare la macro?
    cosa c'è nel foglio?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    84
    ma cosa deve fare la macro? cosa c'è nel foglio?
    Allora:
    nel foglio ci sono 6 valori che appartengono al cosiddetto "Universo" quindi N=6.
    Da questo universo con k=3(che è la classe per le disposizioni con ripetizione) devo trovare la media degli elementi dell'universo(fatto)
    varianza degli elementi dell'universo(fatto)
    Disposizione con ripetizione(fatto)
    le medie campionarie(non fatto)

    cioè le medie in realtà le ho trovate, con le tabelle per ora, e da queste tabelle devo prendere ogni valore e sapere quante volte si presenta(=frequenza di quel valore). Per fare ciò mi sono servito della macro che però non funzia!!

    Spero di essere stato chiaro

    Cmq appena possibile posto il file excel così puoi darci un'occhiata.

  4. #4
    Utente di HTML.it L'avatar di patel
    Registrato dal
    Jan 2008
    Messaggi
    1,995
    Io credo che l'unico modo per capire dove è l'errore è stampare in delle colonne di excel, oppure in un file di testo, tutti i risultati parziali.

  5. #5
    Utente di HTML.it L'avatar di patel
    Registrato dal
    Jan 2008
    Messaggi
    1,995
    Meglio ancora testare l'algoritmo con un altro linguaggio più facilmente debuggabile e poi ritrasferirlo in wba

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.