.NET 4.x Создать вычисляемое поле в Excel - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день. Нужна помощь: я только начал работать с Excel из C#, заполнять ячейки значениями получается, но создать вычисляемое поле нет.Вот формула: =ЕСЛИ(A2=A1;G1+E2*F2;E2*F2) Вот код:
Excel.Application exApp = new Excel.Application();
            exApp.Workbooks.Add();
            Excel.Worksheet workSheet = (Excel.Worksheet)exApp.ActiveSheet;     
            for (int i = 0; i < shapka.Length; i++) { workSheet.Cells[1, i+1] = shapka[i]; }
            for (int j = 2; j <= odid1.Count+1; j++) {
                workSheet.Cells[j, 1] = odid1[j-2];
                workSheet.Cells[j, 2] = orddate1[j - 2];
                workSheet.Cells[j, 3] = odpid1[j - 2];
                workSheet.Cells[j, 4] = prname1[j - 2];
                workSheet.Cells[j, 5] = odcount1[j - 2];
                workSheet.Cells[j, 6] = odprice1[j - 2];
                string s = "=ЕСЛИ(A" + j + "=A" + (j -1) + ";G" + j + "+E" + (j- 1) + "*F" + (j - 1) + ";E" + j + "*F" + j + ")";
                workSheet.Cells[j, 7] = s;

Решение задачи: «.NET 4.x Создать вычисляемое поле в Excel»

textual
Листинг программы
Excel.Range  rng = workSheet.Range[r];            
                rng.Formula = "=IF(A" + j + "=A" + (j - 1) + ";G" + j + "+E" + (j - 1) + "*F" + (j - 1) + ";E" + j + "*F" + j + ")"; ;
           //workSheet.Cells[j, 7] = s;// аналогично IF, AVG etc
string formula = rng.Formula;
workSheet.Cells[j, 7] = formula;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5