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 denganCell.SetStyle(). Untuk isian latar belakang, atur Style.Pattern = FillPattern.Solid dan tetapkan sebuahColor 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(). AturHyperlink.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
| Format | Ekstensi | Baca | Tulis |
|---|---|---|---|
| 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.