Pendahuluan

Aspose.Cells FOSS for .NET adalah perpustakaan kode terkelola murni, berlisensi MIT, untuk membaca, menulis, dan memanipulasi buku kerja Excel .xlsx tanpa ketergantungan Microsoft Office apa pun. Diinstal sebagai paket NuGet Aspose.Cells_FOSS, ia terintegrasi ke dalam proyek .NET apa pun — aplikasi konsol, web API, pekerja latar belakang, dan fungsi serverless.

Posting ini memberikan panduan fitur demi fitur tentang API publik, menunjukkan apa yang dapat dilakukan dan cara memanggil setiap kemampuan dari kode C#.


Ikhtisar Fitur

Siklus Hidup Workbook dan Worksheet

Titik masuk untuk setiap operasi adalah kelas Workbook. Buat satu dari awal dengan new Workbook(), atau muat .xlsx yang ada dengan new Workbook(filePath) atau new Workbook(stream). Jelajahi lembar melalui Workbook.Worksheets, atur Worksheet.Name dan Worksheet.VisibilityType, dan simpan dengan Workbook.Save(). Untuk file yang rusak, berikan instance LoadOptions dengan TryRepairPackage = true dan TryRepairXml = true.

using Aspose.Cells_FOSS;

var options = new LoadOptions
{
    TryRepairPackage = true,
    TryRepairXml = true,
};

try
{
    _ = new Workbook("sample.xlsx", options);
}
catch (WorkbookLoadException exception)
{
    Console.WriteLine(exception.Message);
}

Data Sel dan Rumus

Tulis nilai ke sel dengan Cell.PutValue() — overload menerima string, int, double, decimal, bool, dan DateTime. Baca nilai kembali melalui Cell.Value, Cell.StringValue, dan Cell.Formula. Atur formula Excel dengan properti Cell.Formula; string formula dipertahankan saat disimpan dan bertahan melalui siklus muat ulang.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";

workbook.Save("hello.xlsx");

var loaded = new Workbook("hello.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].Formula);
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].StringValue);

Pengaturan Gaya Sel

Gunakan objek Style untuk mengontrol font, isian, batas, format angka, dan perataan.
Ambil gaya saat ini dengan Cell.GetStyle(), ubah, lalu komit dengan
Cell.SetStyle(). Untuk isian latar belakang, atur Style.Pattern = FillPattern.Solid dan tetapkan sebuah
Color ke Style.ForegroundColor. Gunakan Cells.Merge() untuk memperluas rentang sel.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var cell = workbook.Worksheets[0].Cells["A1"];
cell.PutValue("Styled");

var style = cell.GetStyle();
style.Font.Bold = true;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 241, 196, 15);
cell.SetStyle(style);

Console.WriteLine($"{cell.StringValue} / Bold={cell.GetStyle().Font.Bold}");

Pemformatan Bersyarat

Lampirkan aturan pemformatan bersyarat ke rentang sel melalui ConditionalFormattingCollection. Aturan mendukung FormatConditionType.CellValue, Expression, ColorScale, DataBar, dan IconSet. Gunakan OperatorType untuk menentukan operator perbandingan (Between, Equal, GreaterThan, dll), tetapkan sebuah Style ke sel yang cocok, dan konfigurasikan prioritas serta perilaku stop-if-true per aturan.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];

var cfCollection = sheet.ConditionalFormattings[sheet.ConditionalFormattings.Add()];
cfCollection.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = cfCollection[cfCollection.AddCondition(
    FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var style = rule.Style;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
style.Font.Bold = true;
rule.Style = style;

workbook.Save("conditional-formatting.xlsx");

Validasi Data

Tambahkan batasan input ke sel menggunakan Worksheet.Validations. Jenis validasi yang didukung meliputi ValidationType.List, Decimal, Custom, dan lainnya. Konfigurasikan prompt input (InputTitle, InputMessage) dan pesan kesalahan (ErrorTitle, ErrorMessage, ValidationAlertType). Gunakan CellArea.CreateCellArea() untuk menentukan rentang yang divalidasi dan Validation.AddArea() untuk menerapkan aturan pada rentang tambahan.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Validation Sheet";

var listIdx = sheet.Validations.Add(CellArea.CreateCellArea("A1", "A3"));
var listVal = sheet.Validations[listIdx];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed\"";
listVal.IgnoreBlank = true;
listVal.InCellDropDown = true;
listVal.ShowInput = true;
listVal.InputTitle = "Status";
listVal.InputMessage = "Pick a status";
listVal.ShowError = true;
listVal.ErrorTitle = "Invalid";
listVal.ErrorMessage = "Choose from the list";

workbook.Save("validations-sample.xlsx");

Pengaturan Halaman dan Opsi Cetak

Konfigurasikan tata letak cetak melalui Worksheet.PageSetup. Atur margin (LeftMarginInch, RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, skala, area cetak, baris dan kolom judul, header dan footer, serta pemisah halaman. Semua pengaturan tetap bertahan selama siklus simpan‑muat.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Print Sheet";
sheet.Cells["A1"].PutValue("Title");

var pageSetup = sheet.PageSetup;
pageSetup.Orientation = PageOrientationType.Landscape;
pageSetup.PaperSize = PaperSizeType.PaperA4;
pageSetup.PrintArea = "$A$1:$C$10";
pageSetup.PrintTitleRows = "$1:$2";
pageSetup.LeftHeader = "Left Header";
pageSetup.CenterFooter = "Center Footer";
pageSetup.PrintGridlines = true;
pageSetup.CenterHorizontally = true;

workbook.Save("page-setup-sample.xlsx");

Pengaturan dan Perlindungan Lembar Kerja

Kontrol tampilan per‑lembar dengan Worksheet.ShowGridlines, ShowRowColumnHeaders, ShowZeros, RightToLeft, Zoom, dan TabColor. Lindungi lembar dengan Worksheet.Protect() dan konfigurasikan flag Protection yang terperinci (Objects, FormatCells, InsertRows, AutoFilter, SelectLockedCells). Kelola tinggi baris, lebar kolom, baris/kolom tersembunyi, dan wilayah yang digabungkan melalui Cells.Rows, Cells.Columns, dan Cells.Merge().

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var layout = workbook.Worksheets[0];
layout.Name = "Layout";
layout.VisibilityType = VisibilityType.Hidden;
layout.TabColor = Color.FromArgb(255, 34, 68, 102);
layout.ShowGridlines = false;
layout.Zoom = 85;
layout.Protect();
layout.Protection.FormatCells = true;
layout.Protection.InsertRows = true;

layout.Cells["A1"].PutValue("Merged");
layout.Cells.Rows[1].Height = 22.5d;
layout.Cells.Columns[0].Width = 18.25d;
layout.Cells.Merge(0, 0, 2, 2);

workbook.Save("worksheet-settings-sample.xlsx");

Tautan Hiper dan Rentang Bernama

Tambahkan hyperlink eksternal, internal, dan mailto: melalui HyperlinkCollection.Add(). Atur
Hyperlink.TextToDisplay dan Hyperlink.ScreenTip untuk label yang terlihat oleh pengguna. Definisikan rentang
bernama pada lingkup buku kerja atau lembar menggunakan DefinedNameCollection.Add() — rentang bernama berfungsi sebagai jangkar formula yang stabil dan sumber data diagram yang tetap ada setelah file dimuat ulang.

using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];

sheet.Cells["A1"].PutValue("Docs");
var link = sheet.Hyperlinks[sheet.Hyperlinks.Add("A1", 1, 1, "https://example.com/docs")];
link.TextToDisplay = "Docs";
link.ScreenTip = "External documentation";

var name = workbook.DefinedNames[workbook.DefinedNames.Add("PrimaryRange", "='Sheet1'!$A$1:$D$5")];
name.Comment = "Primary data range";

workbook.Save("hyperlinks-names.xlsx");
Console.WriteLine("Hyperlinks: " + sheet.Hyperlinks.Count);
Console.WriteLine("Defined names: " + workbook.DefinedNames.Count);

Panduan Cepat

dotnet add package Aspose.Cells_FOSS
using Aspose.Cells_FOSS;

var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";
workbook.Save("output.xlsx");

Format yang Didukung

FormatEkstensiBacaTulis
Xlsx.xlsx
Auto(berbagai)

Sumber Terbuka & Lisensi

Aspose.Cells FOSS untuk .NET dipublikasikan di bawah lisensi MIT dan didistribusikan melalui NuGet sebagai Aspose.Cells_FOSS. Ini cocok untuk proyek open-source dan komersial.


Memulai

Sumber Daya Terkait