Створення файлів Excel в Linux

Сьогодні електронні таблиці широко використовуються для зберігання та обміну великою кількістю табличних даних. Крім того, ви можете виконувати різні операції, такі як застосування формул, створення діаграм і графіків, сортування та фільтрація даних тощо. Автоматизація електронних таблиць спричинила революцію в різних галузях. Динамічне створення електронних таблиць і маніпулювання ними значно полегшили обробку даних. Щоб програмно працювати з електронною таблицею, у цій статті описано, як створити файли Excel XLSX або XLS з нуля в Linux за допомогою Java.

API для створення файлів Excel у Linux – безкоштовне завантаження

Для створення та обробки файлів Excel ми будемо використовувати Aspose.Cells for Java. Це потужний API для роботи з електронними таблицями для створення, оновлення або конвертації файлів Excel. Ви можете завантажити JAR API або встановити його у своїх програмах на основі Maven, використовуючи такі конфігурації.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>21.9</version>
</dependency>

Створіть файл Excel у Linux

Файли MS Excel зберігають дані на робочих аркушах, які складаються з кількох клітинок. Тоді як ці аркуші містяться в робочій книзі. Нижче наведено кроки для створення файлу Excel XLSX з нуля в Linux.

  • Створіть екземпляр класу Workbook.
  • Отримайте посилання на потрібний аркуш за допомогою методу Workbook.getWorksheets.get().
  • Вставте значення в потрібну комірку робочого аркуша за допомогою ідентифікатора комірки, наприклад A1, B3 тощо.
  • Збережіть книгу за допомогою методу Workbook.save().

У наведеному нижче прикладі коду показано, як створити файл Excel XLSX у Linux за допомогою Java.

// Створіть нову книгу
Workbook workbook = new Workbook();

// Додайте значення в клітинку
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World!");

// Зберегти як файл Excel XLSX
workbook.save("Excel.xlsx"); 

Нижче наведено результат наведеного вище прикладу коду.

Створіть файл Excel у Linux

Відредагуйте файл Excel XLSX у Linux

Ви також можете легко змінювати наявні файли Excel. Для цього ви можете просто завантажити файл, отримати доступ до потрібного аркуша та оновити його вміст. Нижче наведено кроки для редагування файлу Excel XLSX.

  • Завантажте файл Excel за допомогою класу Workbook.
  • Отримайте посилання на аркуші та клітинки за допомогою класів Worksheet і Cell відповідно.
  • Оновіть вміст комірок.
  • Збережіть оновлену книгу за допомогою методу Workbook.save().

У наведеному нижче прикладі коду показано, як редагувати файл Excel у Linux.

// Створіть нову книгу
Workbook workbook = new Workbook("workbook.xls"); 

// Отримайте посилання на клітинку "A1" із клітинок аркуша
Cell cell = workbook.getWorksheets().get(0).getCells().get("A1");

// Встановіть "Hello World!" значення в клітинку "A1".
cell.setValue("updated cell value.");

// Напишіть файл Excel
workbook.save("Excel.xls", FileFormatType.EXCEL_97_TO_2003);

Створення діаграм у файлах Excel у Linux

Діаграми в електронних таблицях використовуються для візуального представлення даних, що зберігаються на робочих аркушах. Aspose.Cells for Java надає широкий діапазон діаграм, які можна створити у файлах Excel. Нижче наведено кроки для створення діаграми у файлі Excel XLSX на платформі Linux.

  • Створіть новий файл Excel або завантажте наявний за допомогою класу Workbook.
  • Додайте дані до аркуша (необов’язково).
  • Отримайте колекцію діаграм аркуша за допомогою методу Worksheet.getCharts().
  • Додайте нову діаграму до колекції за допомогою методу Worksheet.getCharts().add().
  • Отримати посилання на щойно створену Chart із колекції.
  • Укажіть діапазон комірок, щоб встановити NSeries для діаграми.
  • Нарешті збережіть файл Excel.

У наведеному нижче прикладі коду показано, як створити діаграму у файлі Excel XLSX.

// Створіть нову книгу
Workbook workbook = new Workbook("workbook.xlsx"); 

// Отримання посилання першого аркуша
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet sheet = worksheets.get(0);

// Додавання зразка значення до клітинок
Cells cells = sheet.getCells();
Cell cell = cells.get("A1");
cell.setValue(50);
cell = cells.get("A2");
cell.setValue(100);
cell = cells.get("A3");
cell.setValue(150);
cell = cells.get("B1");
cell.setValue(4);
cell = cells.get("B2");
cell.setValue(20);
cell = cells.get("B3");
cell.setValue(50);

// отримати діаграми на аркуші
ChartCollection charts = sheet.getCharts();

// Додавання діаграми на аркуш
int chartIndex = charts.add(ChartType.PYRAMID, 5, 0, 15, 5);
Chart chart = charts.get(chartIndex);

// Додавання NSeries (джерело даних діаграми) до діаграми починаючи з "A1"
// комірка до "B3"
SeriesCollection serieses = chart.getNSeries();
serieses.add("A1:B3", true);

// Напишіть файл Excel 
workbook.save("Excel_with_Chart.xlsx");

На наступному знімку екрана показано результат наведеного вище прикладу коду.

створити діаграму в excel linux

Створіть зведену таблицю у файлі Excel у Linux

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

  • Створіть новий файл Excel або завантажте наявний за допомогою класу Workbook.
  • Вставте дані в аркуш (необов’язково).
  • Отримайте доступ до колекції зведених таблиць за допомогою методу Worksheet.getPivotTables().
  • Додайте нову зведену таблицю на аркуш за допомогою методу Worksheet.getPivotTables().add().
  • Надати дані у зведену таблицю.
  • Збережіть книгу за допомогою методу Workbook.save().

У наведеному нижче прикладі коду показано, як створити зведену таблицю в Excel.

// Створіть нову книгу
Workbook workbook = new Workbook("workbook.xlsx"); 

// Отримайте перший аркуш.
Worksheet sheet = workbook.getWorksheets().get(0);

// Отримання колекції комірок аркуша
Cells cells = sheet.getCells();

// Встановлення значення клітинок
Cell cell = cells.get("A1");
cell.setValue("Sport");
cell = cells.get("B1");
cell.setValue("Quarter");
cell = cells.get("C1");
cell.setValue("Sales");

cell = cells.get("A2");
cell.setValue("Golf");
cell = cells.get("A3");
cell.setValue("Golf");
cell = cells.get("A4");
cell.setValue("Tennis");
cell = cells.get("A5");
cell.setValue("Tennis");
cell = cells.get("A6");
cell.setValue("Tennis");
cell = cells.get("A7");
cell.setValue("Tennis");
cell = cells.get("A8");
cell.setValue("Golf");

cell = cells.get("B2");
cell.setValue("Qtr3");
cell = cells.get("B3");
cell.setValue("Qtr4");
cell = cells.get("B4");
cell.setValue("Qtr3");
cell = cells.get("B5");
cell.setValue("Qtr4");
cell = cells.get("B6");
cell.setValue("Qtr3");
cell = cells.get("B7");
cell.setValue("Qtr4");
cell = cells.get("B8");
cell.setValue("Qtr3");

cell = cells.get("C2");
cell.setValue(1500);
cell = cells.get("C3");
cell.setValue(2000);
cell = cells.get("C4");
cell.setValue(600);
cell = cells.get("C5");
cell.setValue(1500);
cell = cells.get("C6");
cell.setValue(4070);
cell = cells.get("C7");
cell.setValue(5000);
cell = cells.get("C8");
cell.setValue(6430);


PivotTableCollection pivotTables = sheet.getPivotTables();

// Додавання зведеної таблиці до аркуша
int index = pivotTables.add("=A1:C8", "E3", "PivotTable2");

// Доступ до екземпляра щойно доданої зведеної таблиці
PivotTable pivotTable = pivotTables.get(index);

// Скасування показу загальних підсумків для рядків.
pivotTable.setRowGrand(false);

// Перетягування першого поля в область рядка.
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// Перетягування другого поля в область стовпця.
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1);

// Перетягування третього поля в область даних.
pivotTable.addFieldToArea(PivotFieldType.DATA, 2);

// Напишіть файл Excel 
workbook.save("Excel_with_Chart.xlsx");

Нижче наведено знімок екрана зведеної таблиці, створеної за допомогою наведеного вище зразка коду.

створити зведену таблицю в Excel на Linux

Додайте формули для комірок у файли Excel

Aspose.Cells for Java також підтримує роботу з формулами на аркушах Excel. У наступних розділах описано, як працювати з вбудованими та додатковими функціями.

Застосуйте вбудовані функції в Excel

Для вбудованих функцій ви можете просто отримати посилання на потрібну клітинку на аркуші та додати формулу за допомогою методу Cell.setFormula(String). У наведеному нижче прикладі коду показано, як встановити вбудовану формулу в Excel.

// Створіть нову книгу
Workbook workbook = new Workbook();

// Додайте значення в клітинку
workbook.getWorksheets().get(0).getCells().get(0).setFormula("=H7*(1+IF(P7 =$L$3,$M$3, (IF(P7=$L$4,$M$4,0))))");

// Зберегти як файл Excel XLSX
workbook.save("Excel.xlsx"); 

Додайте додаткові функції в Excel

Aspose.Cells for Java також підтримує функцію, визначену користувачем, для робочих аркушів Excel. Для цього вам потрібно буде зареєструвати функцію надбудови за допомогою файлу xlam(надбудова Excel із підтримкою макросів). Щоб зареєструвати функції надбудови, API надає методи registerAddInFunction(int, String) і registerAddInFunction(String, String, boolean). У наведеному нижче прикладі коду показано, як зареєструвати та використовувати функцію надбудови в Excel.

// створити нову робочу книгу
Workbook workbook = new Workbook();

// Зареєструйте надбудову з підтримкою макросу разом із назвою функції
int id = workbook.getWorksheets().registerAddInFunction("TESTUDF.xlam", "TEST_UDF", false);

// Зареєструйте додаткові функції у файлі (якщо є)
workbook.getWorksheets().registerAddInFunction(id, "TEST_UDF1"); //in this way you can add more functions that are in the same file

// Доступ до першого аркуша
Worksheet worksheet = workbook.getWorksheets().get(0);

// Доступ до першої клітинки
Cell cell = worksheet.getCells().get("A1");

// Встановіть назву формули, наявну в надбудові
cell.setFormula("=TEST_UDF()"); 

// Зберегти як файл Excel XLSX
workbook.save("Excel.xlsx"); 

Отримайте безкоштовну ліцензію

Ви можете використовувати Aspose.Cells for Java без обмежень оцінки за допомогою тимчасової ліцензії.

Висновок

У цій статті ви дізналися, як створювати файли MS Excel з нуля в Linux. Крім того, ви побачили, як оновлювати файли Excel, генерувати діаграми, створювати зведені таблиці та додавати формули на робочі аркуші. Ви можете дізнатися більше про Aspose.Cells for Java, використовуючи документацію. Якщо у вас виникнуть запитання, ви можете поставити їх на нашому форумі.

Дивись також