Features
Features
Aspose.Cells FOSS for .NET is a pure managed .NET library for creating, reading, and modifying Excel XLSX spreadsheets. The entry point is the Workbook Sınıf, çalışma sayfalarına erişim sağlar, tanımlanmış isimler ve kaydetme/ yükleme işlemleri. Bu sayfa her önemli özellik alanını kısa kod örnekleri ile özetler.
Workbook oluşturun, yükleme ve kaydetme
Yeni bir çalışma kitabı oluşturun new Workbook(). mevcut XLSX dosyasını, bir dosya yolu inşaatçıya geçerek yükleme. LoadOptions • Yanlış toleranslı yükleme yaptırmak için. çağrı Workbook.Save(path) Değişim devam ettirmek için.
using Aspose.Cells_FOSS;
// New workbook
var wb = new Workbook();
wb.Worksheets[0].Cells["A1"].PutValue("Hello");
wb.Save("output.xlsx");
// Load with repair options
var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };
try
{
var loaded = new Workbook("input.xlsx", opts);
Console.WriteLine(loaded.Worksheets[0].Cells["A1"].StringValue);
}
catch (WorkbookLoadException ex)
{
Console.WriteLine("Load failed: " + ex.Message);
}Cell Data ve Formüller
Kullanım Cell.PutValue() Çizgiler, bütünler, decimallar, booleans ve DateTime Değerler Set Cell.Formula Excel-kompatible formül çubuğunu atamak için. read back display text via Cell.StringValue ve kaynak değerleri aracılığıyla Cell.Value.
var wb = new Workbook(); var ws = wb.Worksheets[0];
ws.Cells[“A1”].PutValue(“Qty”); ws.Cells[“B1”].PutValue(“Price”); ws.Cells[“C1”].PutValue(“Total”); ws.Cells[“A2”].PutValue(10); ws.Cells[“B2”].PutValue(4.99m); ws.Cells[“C2”].Formula = “=A2*B2”;
wb.Save(“data.xlsx”);
var loaded = new Workbook(“data.xlsx”); Console.WriteLine(loaded.Worksheets[0].Cells[“C2”].StringValue); // 49.9
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Qty");
ws.Cells["B1"].PutValue("Price");
ws.Cells["C1"].PutValue("Total");
ws.Cells["A2"].PutValue(10);
ws.Cells["B2"].PutValue(4.99m);
ws.Cells["C2"].Formula = "=A2*B2";
wb.Save("data.xlsx");
var loaded = new Workbook("data.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C2"].StringValue); // 49.9Cell Styling için
Yorum ve değiştirme Style Her hücre ile ilgili Cell.GetStyle() ve Cell.SetStyle().• The Style Sınıf sağlar Font (İtalyanca, İtalya ve İrlanda), ForegroundColor, Pattern (Tip için FillPattern), HorizontalAlignment ( Kullanım HorizontalAlignmentType• Sınır kontrolü ile Borders.
var wb = new Workbook(); var cell = wb.Worksheets[0].Cells[“A1”]; cell.PutValue(“Styled Header”);
var style = cell.GetStyle(); style.Font.Bold = true; style.Font.Size = 14; style.Pattern = FillPattern.Solid; style.ForegroundColor = Color.FromArgb(255, 198, 239, 206); style.HorizontalAlignment = HorizontalAlignmentType.Center; cell.SetStyle(style);
wb.Save(“styled.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var cell = wb.Worksheets[0].Cells["A1"];
cell.PutValue("Styled Header");
var style = cell.GetStyle();
style.Font.Bold = true;
style.Font.Size = 14;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 198, 239, 206);
style.HorizontalAlignment = HorizontalAlignmentType.Center;
cell.SetStyle(style);
wb.Save("styled.xlsx");Şartlı Formatıma
Worksheet.ConditionalFormattings geri döner a ConditionalFormattingCollection.Çağrı Add() Bir kural oluşturmak için, sonra AddCondition() Kullanım kurallarını eklemek için FormatConditionType ve OperatorType.Desteklenen koşullar dahil olmak üzere CellValue, Expression, ColorScale, DataBar,ve IconSet.
var wb = new Workbook(); var ws = wb.Worksheets[0]; for (var i = 0; i < 10; i++) ws.Cells[i, 0].PutValue(i + 1);
var ruleSet = ws.ConditionalFormattings[ws.ConditionalFormattings.Add()]; ruleSet.AddArea(CellArea.CreateCellArea(“A1”, “A10”)); var rule = ruleSet[ruleSet.AddCondition(FormatConditionType.CellValue, OperatorType.Between, “3”, “7”)]; var ruleStyle = rule.Style; ruleStyle.Pattern = FillPattern.Solid; ruleStyle.ForegroundColor = Color.FromArgb(255, 255, 199, 206); rule.Style = ruleStyle;
wb.Save(“cf.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
for (var i = 0; i < 10; i++)
ws.Cells[i, 0].PutValue(i + 1);
var ruleSet = ws.ConditionalFormattings[ws.ConditionalFormattings.Add()];
ruleSet.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = ruleSet[ruleSet.AddCondition(FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var ruleStyle = rule.Style;
ruleStyle.Pattern = FillPattern.Solid;
ruleStyle.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
rule.Style = ruleStyle;
wb.Save("cf.xlsx");Veri Validasyonu
Worksheet.Validations geri döner a ValidationCollection.Çağrı Add(CellArea) oluşturmak için a Validation Bir hücre aralığı için. ayarlayın Type Mülkiyet Kullanımı ValidationType (List, Decimal,veya Custom• Konfigürasyon Formula1, Formula2, Operator, InputTitle, InputMessage, ErrorTitle,ve ErrorMessage.
var listVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea(“A1”, “A10”))]; listVal.Type = ValidationType.List; listVal.Formula1 = “"Open,Closed,Pending"”; listVal.InCellDropDown = true;
var numVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea(“B1”, “B10”))]; numVal.Type = ValidationType.Decimal; numVal.Operator = OperatorType.Between; numVal.Formula1 = “0”; numVal.Formula2 = “100”; numVal.ShowError = true;
wb.Save(“validation.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
var listVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("A1", "A10"))];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed,Pending\"";
listVal.InCellDropDown = true;
var numVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("B1", "B10"))];
numVal.Type = ValidationType.Decimal;
numVal.Operator = OperatorType.Between;
numVal.Formula1 = "0";
numVal.Formula2 = "100";
numVal.ShowError = true;
wb.Save("validation.xlsx");Otomatik Filtre
Worksheet.AutoFilter Açıklama The AutoFilter Seti - Set AutoFilter.Range Başlık aralığı aralıklarını tanımlamak için. erişim AutoFilter.FilterColumns (Bir koleksiyon) ve çağrı Add(columnIndex) Filtrelemeyi belirli bir sütunda etkinleştirmek için.
ws.Cells[“A1”].PutValue(“Name”); ws.Cells[“B1”].PutValue(“Region”); ws.Cells[“C1”].PutValue(“Sales”); ws.Cells[“A2”].PutValue(“Alice”); ws.Cells[“B2”].PutValue(“North”); ws.Cells[“C2”].PutValue(1200);
ws.AutoFilter.Range = “A1:C1”; ws.AutoFilter.FilterColumns.Add(1);
wb.Save(“filter.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Name");
ws.Cells["B1"].PutValue("Region");
ws.Cells["C1"].PutValue("Sales");
ws.Cells["A2"].PutValue("Alice"); ws.Cells["B2"].PutValue("North"); ws.Cells["C2"].PutValue(1200);
ws.AutoFilter.Range = "A1:C1";
ws.AutoFilter.FilterColumns.Add(1);
wb.Save("filter.xlsx");Hyperlinks ve Defined Names
Worksheet.Hyperlinks A’nın HyperlinkCollection.Çağrı Add() Dış URL’ler, iç hücre referansları veya mailto bağlantıları girin. Hyperlink.TextToDisplay ve Hyperlink.ScreenTip Kullanıcı yüzü metin. Workbook.DefinedNames A’nın DefinedNameCollection;• Çağrı Add(name, refersTo) Adlandırılan rantlar oluşturmak için.
ws.Cells[“A1”].PutValue(“Docs”); var link = ws.Hyperlinks[ws.Hyperlinks.Add(“A1”, 1, 1, “https://docs.aspose.org/cells/net/”)]; link.TextToDisplay = “Documentation”;
wb.DefinedNames[wb.DefinedNames.Add(“DataRange”, “Sheet1!$A$1:$D$10”)].Comment = “Main data range”;
wb.Save(“links.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Docs");
var link = ws.Hyperlinks[ws.Hyperlinks.Add("A1", 1, 1, "https://docs.aspose.org/cells/net/")];
link.TextToDisplay = "Documentation";
wb.DefinedNames[wb.DefinedNames.Add("DataRange", "Sheet1!$A$1:$D$10")].Comment = "Main data range";
wb.Save("links.xlsx");Sayfa Setup
Worksheet.PageSetup baskı marjları, yönlendirme, kağıt boyutu, baskılı alan, başlık satırları/kolonları , başlar, ayaklar ve sayfa boşlukları kontrol eder. PageOrientationType ve PaperSizeType Enum için.
var wb = new Workbook(); var ps = wb.Worksheets[0].PageSetup; ps.Orientation = PageOrientationType.Landscape; ps.PaperSize = PaperSizeType.PaperA4; ps.PrintArea = “$A$1:$H$50”; ps.CenterHeader = “My Report”; ps.CenterHorizontally = true; ps.AddHorizontalPageBreak(25);
wb.Save(“paged.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ps = wb.Worksheets[0].PageSetup;
ps.Orientation = PageOrientationType.Landscape;
ps.PaperSize = PaperSizeType.PaperA4;
ps.PrintArea = "$A$1:$H$50";
ps.CenterHeader = "My Report";
ps.CenterHorizontally = true;
ps.AddHorizontalPageBreak(25);
wb.Save("paged.xlsx");İşletme Yönetimi
Adlandırma, yeniden adlandırmak, gizlemek ve iş sayfalarını düzenlemek için WorksheetCollection. WorksheetCollection.Add(name) Yeni sayfanın indeksleri geri getirir. set Worksheet.VisibilityType Kullanımı VisibilityType.hücreleri birleştirmek için Cells.Merge() ve kontrol satır / sütun boyutları aracılığıyla Cells.Rows ve Cells.Columns.
var wb = new Workbook(); wb.Worksheets[0].Name = “Summary”; var dataIdx = wb.Worksheets.Add(“Data”); wb.Worksheets[dataIdx].VisibilityType = VisibilityType.Hidden; wb.Worksheets.ActiveSheetName = “Summary”;
var ws = wb.Worksheets[“Summary”]; ws.Cells[“A1”].PutValue(“Title”); ws.Cells.Merge(0, 0, 1, 4); ws.Cells.Rows[0].Height = 30d; ws.Cells.Columns[0].Width = 20d;
wb.Save(“worksheets.xlsx”);
---
```csharp
using Aspose.Cells_FOSS;
var wb = new Workbook();
wb.Worksheets[0].Name = "Summary";
var dataIdx = wb.Worksheets.Add("Data");
wb.Worksheets[dataIdx].VisibilityType = VisibilityType.Hidden;
wb.Worksheets.ActiveSheetName = "Summary";
var ws = wb.Worksheets["Summary"];
ws.Cells["A1"].PutValue("Title");
ws.Cells.Merge(0, 0, 1, 4);
ws.Cells.Rows[0].Height = 30d;
ws.Cells.Columns[0].Width = 20d;
wb.Save("worksheets.xlsx");İpuçları ve En İyi Uygulamalar
- Her zaman yakalamak
WorkbookLoadExceptionKullanıcı tarafından sağlanan yollardan dosyaları yükleme sırasında. - Kullanım
Cell.PutValue()kaydetmeyi planladığınız tam .NET tipi ile - geçindecimalPara birimi için,DateTimeTarih için. - Read
Cell.StringValueYazı yazmak için; kullanmakCell.Value.NET nesnesine ihtiyacınız olduğunda. - İhtiyacınız olan en geniş aralıktaki koşullu biçimlendirme kuralları ayarlayın - büyük sayfalarda per-row kurallar pahalıdır.
- Call
wb.Save()Her hücre yazdıktan sonra değil, bir kez sonunda.
ortak sorunlar
| Issue | Cause | Fix |
|---|---|---|
WorkbookLoadException Açıkta | XLSX’te ZIP yapısı bozuldu | Setleri LoadOptions.TryRepairPackage = true |
Formül boş döndü StringValue | Formül yük üzerinde yeniden hesaplanmamıştır | Access Cell.StringValue sonra Workbook.Save() Trip Yürüyüşü |
| Hyperlink adresi, URL’yi gösterir | TextToDisplay ayarlamaz | Setleri Hyperlink.TextToDisplay sonra Add() |
| İşletme tabı görünmez | VisibilityType Seti için Hidden | Setleri ws.VisibilityType = VisibilityType.Visible |
FAQ
Aspose.Cells FOSS for .NET Microsoft Office’e mi ihtiyaç duyuyor?
Kütüphane, Office, Excel veya COM interoplarına bağımlı olmayan saf yönetilmiş koddur.
Hangi dosya biçimleri desteklenir?
CSV, ODS, PDF ve biner XLS bu sürümde desteklenmiyor.
Bu kütüphaneyi ticari bir uygulamada kullanabilir miyim?
Evet. Aspose.Cells FOSS, MIT Lisansı altında yayınlanır ve bu lisans, royalties olmadan sınırsız ticari kullanım sağlar.
Minimum .NET versiyonu nedir?
.NET 6.0 veya daha sonraki.
Bir hücreye bir arka plan rengi nasıl uygulanır?
Setleri style.Pattern = FillPattern.Solid ve style.ForegroundColor = Color.FromArgb(...),Sonra arama cell.SetStyle(style).
API Referans Özetleri
| Sınıf / Yöntem | Description |
|---|---|
Workbook | Root sınıfı - oluşturmak, yüklemek, çalışma kitapları kurtarmak |
Workbook.Worksheets | Geri dönmek için WorksheetCollection |
Workbook.Save(path) | Disk için çalışma kitabını kaydetmek |
Workbook.DefinedNames | Adı Soyadı Koleksiyonu |
Worksheet.Cells | Cell Grid erişim |
Worksheet.ConditionalFormattings | Şartlı formülasyon kuralları |
Worksheet.Validations | Veri Validasyon Kuralları |
Worksheet.AutoFilter | Auto Filter Yapılandırma |
Worksheet.Hyperlinks | Hyperlink Koleksiyonu |
Worksheet.PageSetup | Layout ayarları |
Cell.PutValue() | Tipli hücre verileri yazın |
Cell.Formula | Excel-kompatibel formül çubuğu |
Cell.GetStyle() / Cell.SetStyle() | Okuma / Yazma Hücre Stilleri |
Style.Pattern | Yorumlar için tıklayınız (FillPattern Enum ) |
Style.HorizontalAlignment | Sütüye bağlı kalma (HorizontalAlignmentType) |
LoadOptions | Dosya yükleme için seçenekler |