Ciao a tutti, sono alle "prime armi" con c#...avrei bisogno di una mano...ho da fare un controllo su alcuni dati...il problema è che ho estratto questi dati da un database access 97 esportati in excel e adesso sto cercando di fare un programmino che calcoli la media geometrica di questi valori (media geometrica = (va1*...*valN)^1/N)....questi valori che devo prendere stanno nella colonna 4 e partono da riga 2 (la riga 1 sono i nomi dei campi)..ho buttato giu questo codice:
codice:
 public static double mediaGeometrica(String filename)
        {
            // apro il file excel
            Application app = new Application();
            //app.Visible = true;
            try
            {
                Workbook excel = app.Workbooks.Open(filename);
                Worksheet sheet = excel.Worksheets.get_Item(1);

                // calcolo esponente x cui elevare il coeff finale come 1 / numero di righe del file xls meno 1 (la riga con i nomi dei campi)
                double exp = 1 / (sheet.UsedRange.Rows.Count - 1);

                // inizializzo il coeff della media geometrica coeff = 1
                double coeff = 1;

                // per ognuno dei valori dell'array degli esami
                for (int i = 2; i <= sheet.UsedRange.Rows.Count; i++)
                {
                    coeff = coeff * (double)(sheet.UsedRange.Cells[i, 4] as Range).Value;     // moltiplico il coeff per il valore dell'esame --> produttoria dei valori degli esami
                    Console.WriteLine(coeff);
                }

                return System.Math.Pow(coeff, exp);   // ritorno il valore della media geometrica (TT [i=1:n] value[i])^(1/n)
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);

                return 0;
            }
        }
praticamente con un ciclo for che parte da 2 (la prima riga) fino all'ultima compresa moltiplico il coefficiente per il valore di questa riga...dai risultati che da (mi stampa Infinito e la media finale è 1) secondo me non prende correttamente il valore della cella....qualcuno sa come aiutarmi???