Як видалити формулу, але зберегти дані в Excel на Java

У цьому посібнику пояснюється, як видалити формулу, але зберегти дані в Excel на Java за допомогою простого коду. Він надасть детальну інформацію про завантаження файлу Excel і подальшу його обробку для видалення формули шляхом доступу до кожної клітинки окремо. Зрештою, ви можете зберегти цей файл таким, яким він є, або в іншому форматі, наприклад файл XLSX на диску.

Кроки для видалення формули, але збереження даних у Excel на Java

  1. З репозиторію Maven додайте до свого проекту посилання на бібліотеку Aspose.Cells
  2. Додайте посилання на класи Workbook і Cell за допомогою Імпорту в програмі
  3. Завантажте книгу, формулу з якої потрібно видалити
  4. Отримайте посилання на клітинку в цільовому worksheet, де потрібно видалити формулу
  5. Використовуючи посилання на клітинку, збережіть наявне значення у тимчасовій змінній
  6. Встановіть формулу порожньою в цільовій клітинці
  7. Установіть значення клітинки з тимчасової змінної
  8. Збережіть вихідний файл без формули, що містить лише дані

За допомогою цих кроків ви можете отримати доступ до будь-якого аркуша цільового файлу Excel, а потім отримати посилання на потрібну клітинку, формулу якої потрібно видалити. Під час цієї операції ви спочатку зберігаєте значення у тимчасовій змінній, а потім видаляєте формулу. Нарешті, вихідне значення знову встановлюється в тій самій клітинці.

Код для видалення формули в Excel без видалення даних у Java

import com.aspose.cells.Cell;
import com.aspose.cells.License;
import com.aspose.cells.Workbook;
public class HowToRemoveFormulaButKeepDataInExcelInJava {
public static void main(String[] args) throws Exception { //main function for HowToRemoveFormulaButKeepDataInExcelInJava
// Initialize a license to avoid trial version watermark in the output file after removing formulas
License license = new License();
license.setLicense("Aspose.Cells.lic");
// Load the Excel file from which formula is to be removed
Workbook excelWorkbookWithFormula = new Workbook("SampleExcelWithFormula.xlsx");
// Get a reference of the cell where formula is to be removed
Cell cellWithFormula = excelWorkbookWithFormula.getWorksheets().get(0).getCells().get("C1");
// Store the value in a temporary variable for later use
Object tempData = cellWithFormula.getValue();
// Remove the formula by setting its value empty
cellWithFormula.setFormula("");
// Save the value back from the temporary variable
cellWithFormula.setValue(tempData);
// Save the workbook with data without the formula
excelWorkbookWithFormula.save("WorkbookWithDataOnly.xlsx");
}
}

Наведений вище зразок коду демонструє, як видалити формулу, але зберегти дані в Excel у клітинці Java. Однак якщо у вас є великий файл і ви хочете видалити всі формули з усієї книги одночасно, просто викличте removeFormulas() у колекції клітинок робочого аркуша, як показано в наведеному нижче прикладі коду.

Код для видалення всіх формул у Excel без видалення даних у Java

import com.aspose.cells.License;
import com.aspose.cells.Workbook;
import com.aspose.cells.Worksheet;
public class HowToRemoveAllFormulasButKeepDataInExcelInJava {
public static void main(String[] args) throws Exception { //main function for HowToRemoveAllFormulasButKeepDataInExcelInJava
// Initialize a license to avoid trial version watermark in the output file after removing all formulas
License license = new License();
license.setLicense("Aspose.Cells.lic");
// Load the target workbook from which all formulas are to be removed
Workbook workbookWithFormula = new Workbook("WorkbookWithFormulas.xlsx");
// Iterate through all the worksheets in the workbook to remove formulas
for(Object object : workbookWithFormula.getWorksheets())
{
Worksheet worksheet = (Worksheet)object;
worksheet.getCells().removeFormulas();
}
// Save the resultant workbook having data only
workbookWithFormula.save("WorkbookWithoutFormulas.xlsx");
}
}

Слід зазначити, що для запуску цього коду не потрібні сторонні інструменти чи програмне забезпечення, наприклад Interop або MS Excel. Крім того, якщо ви хочете зберегти вихідний файл у якомусь іншому форматі, як-от PDF, ви можете звернутися до статті як створити PDF з Excel на Java.

 Українська