Использование функции из библиотеки Excel - C#
Формулировка задачи:
Всем доброго времени суток, у меня проблема с работой библиотеки Exel(некоторыми их функциями)
Всё подлкючил
все вроде как работает, сделал добавление случайного числа, вроде все ок.
работает формула добавление случайного числа
Но вот эту формулу (Частота) не воспринимает и возращает -2146826273
как мне исправить работу этой формулы?
int res = excel._Evaluate("{=FREQUENCY({22;22;22;22};{22})}");
кажется правильно записал....
using Excel = Microsoft.Office.Interop.Excel;
Excel.Application excel = new Excel.Application(); //создаем COM-объект Excel Object formula, result; //переменные для хранения формулы и результата formula = ""; //берем формулу result = excel._Evaluate(formula); //вычисляем формулу MessageBox.Show(result.ToString()); //выводим результат string h = "0.1;0.2;0.3;0.4;0.5"; string rand = ""; int rnumb = 200; for (int i = 0; i < rnumb; i++) { rand = rand + Convert.ToString(excel._Evaluate("=RAND()")); if (i != 0 || i != rnumb - 1) { rand = rand + ";"; } }
int res = excel._Evaluate("{=FREQUENCY({22;22;22;22};{22})}"); MessageBox.Show(Convert.ToString(excel._Evaluate("{=FREQUENCY({"+rand+"};{"+h+"})}"))); excel.Quit();
подскажет кто в чем проблема?
Решение задачи: «Использование функции из библиотеки Excel»
textual
Листинг программы
class RandomArray { //массив значений double[] array; //верхние границы интервалов double[] intervals = { 0.2, 0.4, 0.6, 0.8, 1.0 }; public RandomArray(int size) //конструктор, принимает количество элементов в создаваемом массиве { Random rnd = new Random(); array = new double[size]; for (int i = 0; i < size; i++) { array[i] = rnd.NextDouble(); } } public int[] Frequency() //метод возвращающий массив частот { int[] freqArray = new int[intervals.Length + 1]; for (int i = 0; i < array.Length; i++) { freqArray[GetIndex(array[i])]++; } return freqArray; } int GetIndex(double d) //метод, определяющий номер интервала для элемента { for (int i = 0; i < intervals.Length; i++) { if (d < intervals[i]) return i; } return intervals.Length; } public double[] GetArray() //возвращение массива { return array; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д