Я работаю над приложением POI, чтобы манипулировать файлом Excel.
Фактически пользователь задает формулу и файлы, а я применяю формулу к выходному файлу. Формула должна изменитьзначение столбца в ячейке.
Например, для столбцов B я хочу применить ко всем моим столбцам формулу.Пользователь дает мне LEFT (x, 2), и я должен применить это ко всем столбцам.(x определяет все столбцы)
Но когда я применяю формулу, я получаю формулу в виде строки.Я пытаюсь передать значение ячейки по формуле, но, конечно, оно не работает ...
Я думаю, что я должен скопировать все свои данные в другой файл Excel, работать над ним и скопировать вставить их в выводфайл или их другой способ?
С уважением,
Код:
for (int i = 0; i < cell[0].length; i++){ //Checking the header
for (int j = 0; j < ruleArray.length; j++){ //Checking the Header of the array with the rule to apply
if (cell[0][i].toString().equals(ruleArray[j][0])){ //Comparing
String testF = ruleArray[j][1];
if (testF.contains("X") || testF.contains("x")){ //Replacing X with value for the formula
for (int k = 0; k < cell.length; k++){
indexT = cell[0][i].getColumnIndex();
indexC = cell[k][i].getRowIndex()+1;
String colLetter = CellReference.convertNumToColString(indexT);
formula = testF.replace("x", colLetter+indexC);
cell[k][i].setCellType(CellType.FORMULA);
cell[k][i].setCellFormula(formula);
}
}
}
}
}