ایجاد فایل های اکسل در لینوکس

این روزها، صفحات گسترده به طور گسترده ای برای نگهداری و به اشتراک گذاری حجم زیادی از داده های جدولی استفاده می شود. همچنین می‌توانید عملیات مختلفی مانند اعمال فرمول، تولید نمودار و نمودار، مرتب‌سازی و فیلتر کردن داده‌ها و غیره را انجام دهید. اتوماسیون صفحات گسترده انقلابی را در صنایع مختلف به وجود آورده است. ایجاد پویا و دستکاری صفحات گسترده، مدیریت داده ها را بسیار آسان کرده است. به منظور انجام دستکاری صفحه گسترده به صورت برنامه ای، این مقاله نحوه ایجاد فایل های Excel XLSX یا XLS را از ابتدا در لینوکس با استفاده از جاوا پوشش می دهد.

API برای ایجاد فایل های اکسل در لینوکس - دانلود رایگان

برای ایجاد و دستکاری فایل های اکسل، از Aspose.Cells for Java استفاده می کنیم. این یک API دستکاری صفحه گسترده قدرتمند برای ایجاد، به روز رسانی یا تبدیل فایل های اکسل است. می‌توانید 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>

یک فایل اکسل در لینوکس ایجاد کنید

فایل های MS Excel داده ها را در کاربرگ هایی که از سلول های متعدد تشکیل شده اند نگهداری می کنند. در حالی که، این کاربرگ ها توسط یک کتاب کار موجود است. در زیر مراحل ایجاد یک فایل اکسل XLSX از ابتدا در لینوکس آمده است.

  • یک نمونه از کلاس Workbook ایجاد کنید.
  • با استفاده از روش Workbook.getWorksheets.get() مرجع کاربرگ مورد نظر را دریافت کنید.
  • مقدار را با استفاده از شناسه سلول مانند A1، B3 و غیره در سلول مورد نظر کاربرگ وارد کنید.
  • کتاب کار را با استفاده از روش Workbook.save() ذخیره کنید.

نمونه کد زیر نحوه ایجاد یک فایل Excel XLSX در لینوکس با استفاده از جاوا را نشان می دهد.

// یک کتاب کار جدید ایجاد کنید
Workbook workbook = new Workbook();

// اضافه کردن مقدار در سلول
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World!");

// به عنوان فایل اکسل XLSX ذخیره کنید
workbook.save("Excel.xlsx"); 

در زیر خروجی نمونه کد بالا آمده است.

ایجاد فایل اکسل در لینوکس

یک فایل اکسل XLSX را در لینوکس ویرایش کنید

همچنین می توانید فایل های اکسل موجود را به صورت یکپارچه تغییر دهید. برای این کار می توانید به سادگی فایل را بارگذاری کنید، به کاربرگ مورد نظر دسترسی پیدا کنید و محتوای آن را به روز کنید. مراحل زیر برای ویرایش فایل اکسل XLSX آمده است.

  • فایل اکسل را با استفاده از کلاس Workbook بارگیری کنید.
  • به ترتیب با استفاده از کلاس‌های Worksheet و Cell مرجع کاربرگ‌ها و سلول‌ها را دریافت کنید.
  • محتوای سلول ها را به روز کنید.
  • کتاب کار به روز شده را با استفاده از روش Workbook.save() ذخیره کنید.

نمونه کد زیر نحوه ویرایش فایل اکسل در لینوکس را نشان می دهد.

// یک کتاب کار جدید ایجاد کنید
Workbook workbook = new Workbook("workbook.xls"); 

// مرجع سلول "A1" را از سلول های یک کاربرگ دریافت کنید
Cell cell = workbook.getWorksheets().get(0).getCells().get("A1");

// "سلام جهان!" مقدار را در سلول "A1" قرار دهید
cell.setValue("updated cell value.");

// فایل اکسل را بنویسید
workbook.save("Excel.xls", FileFormatType.EXCEL_97_TO_2003);

ایجاد نمودار در فایل های اکسل در لینوکس

نمودارها در صفحات گسترده برای نمایش بصری داده های ذخیره شده در کاربرگ ها استفاده می شوند. Aspose.Cells برای جاوا محدوده گسترده ای از نمودارها را ارائه می دهد که می توانید در فایل های اکسل ایجاد کنید. مراحل زیر برای ایجاد نمودار در فایل اکسل XLSX در پلتفرم لینوکس آمده است.

  • با استفاده از کلاس Workbook یک فایل اکسل جدید ایجاد کنید یا یک فایل موجود را بارگیری کنید.
  • داده ها را به کاربرگ اضافه کنید (اختیاری).
  • مجموعه نمودار کاربرگ را با استفاده از روش Worksheet.getCharts() دریافت کنید.
  • با استفاده از متد Worksheet.getCharts().add() یک نمودار جدید به مجموعه اضافه کنید.
  • مرجع [نمودار13 جدید ایجاد شده را از مجموعه دریافت کنید.
  • محدوده سلول ها را برای تنظیم NSeries برای نمودار مشخص کنید.
  • در نهایت فایل اکسل را ذخیره کنید.

نمونه کد زیر نحوه ایجاد نمودار در فایل اکسل 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);

// فایل اکسل را بنویسید 
workbook.save("Excel_with_Chart.xlsx");

تصویر زیر خروجی نمونه کد بالا را نشان می دهد.

ایجاد نمودار در اکسل لینوکس

یک Pivot Table در فایل اکسل در لینوکس ایجاد کنید

جداول محوری در کاربرگ های اکسل دارای اهداف مختلفی مانند افزودن فیلتر به داده ها، محاسبه مجموع، خلاصه کردن داده ها و غیره هستند. جداول محوری را می توان با استفاده از محدوده سلول های کاربرگ ایجاد کرد. با انجام مراحل زیر می توانید یک جدول محوری در یک فایل اکسل ایجاد کنید.

  • یک فایل اکسل جدید ایجاد کنید یا یک فایل موجود را با استفاده از کلاس Workbook بارگیری کنید.
  • درج داده ها در کاربرگ (اختیاری).
  • با استفاده از روش Worksheet.getPivotTables() به مجموعه جدول محوری دسترسی پیدا کنید.
  • با استفاده از متد Worksheet.getPivotTables().add() یک جدول محوری جدید در کاربرگ اضافه کنید.
  • داده ها را به جدول محوری ارائه دهید.
  • کتاب کار را با استفاده از روش Workbook.save() ذخیره کنید.

نمونه کد زیر نحوه ایجاد جدول محوری در اکسل را نشان می دهد.

// یک کتاب کار جدید ایجاد کنید
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();

// اضافه کردن PivotTable به کاربرگ
int index = pivotTables.add("=A1:C8", "E3", "PivotTable2");

// دسترسی به نمونه PivotTable جدید اضافه شده
PivotTable pivotTable = pivotTables.get(index);

// نمایش مجموع کل ردیف‌ها نشان داده نمی‌شود.
pivotTable.setRowGrand(false);

// اولین فیلد را به ناحیه ردیف بکشید.
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// فیلد دوم را به ناحیه ستون بکشید.
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1);

// کشیدن فیلد سوم به ناحیه داده.
pivotTable.addFieldToArea(PivotFieldType.DATA, 2);

// فایل اکسل را بنویسید 
workbook.save("Excel_with_Chart.xlsx");

تصویر زیر اسکرین شات جدول محوری تولید شده توسط نمونه کد بالا است.

جدول محوری در اکسل در لینوکس ایجاد کنید

افزودن فرمول برای سلول ها در فایل های اکسل

Aspose.Cells برای جاوا همچنین از کار با فرمول ها در کاربرگ های اکسل پشتیبانی می کند. بخش های زیر نحوه کار با توابع داخلی و افزودنی را شرح می دهد.

اعمال توابع داخلی در اکسل

برای توابع داخلی، می توانید به سادگی مرجع سلول مورد نظر را در کاربرگ دریافت کنید و با استفاده از روش Cell.setFormula(String) فرمولی اضافه کنید. نمونه کد زیر نحوه تنظیم فرمول داخلی در اکسل را نشان می دهد.

// یک کتاب کار جدید ایجاد کنید
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))))");

// به عنوان فایل اکسل XLSX ذخیره کنید
workbook.save("Excel.xlsx"); 

اضافه کردن توابع افزودنی در اکسل

Aspose.Cells برای جاوا همچنین از تابع تعریف شده توسط کاربر برای کاربرگ های اکسل پشتیبانی می کند. برای این کار، باید تابع افزودنی را با استفاده از یک فایل xlam (افزونه با قابلیت اکسل ماکرو) ثبت کنید. برای ثبت توابع افزودنی، API متدهای registerAddInFunction(int، String) و registerAddInFunction(String، String، Boolean) را ارائه می‌کند. نمونه کد زیر نحوه ثبت و استفاده از یک تابع افزودنی در اکسل را نشان می دهد.

// یک کتاب کار جدید ایجاد کنید
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()"); 

// به عنوان فایل اکسل XLSX ذخیره کنید
workbook.save("Excel.xlsx"); 

مجوز رایگان دریافت کنید

می‌توانید از Aspose.Cells برای جاوا بدون محدودیت ارزیابی با استفاده از مجوز موقت استفاده کنید.

نتیجه

در این مقاله با نحوه ایجاد فایل های MS Excel از ابتدا در لینوکس آشنا شدید. همچنین نحوه به‌روزرسانی فایل‌های اکسل، تولید نمودارها، ایجاد جداول محوری و افزودن فرمول در کاربرگ‌ها را مشاهده کرده‌اید. می توانید با استفاده از مستندات درباره Aspose.Cells برای جاوا اطلاعات بیشتری کسب کنید. در صورت داشتن هرگونه سوال، می توانید از طریق [تالار گفتمان23 ما بپرسید.

همچنین ببینید