Особенности
Особенности
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 класс, который предоставляет доступ к рабочим листам, определенным именам и операциям сохранения/загрузки. Эта страница обобщает каждую основную область функций с краткими примерами кода.
Рабочая книга Создать, загрузить и сохранить
Создать новую рабочую книгу с помощью: new Workbook().Загрузить существующий файл XLSX, передав путь к конструктору. Используйте LoadOptions для обеспечения неисправности нагрузки. Workbook.Save(path) Продолжать изменения.
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.PutValue() написать строки, целые числа, десятичные цифры, булевые и DateTime значения. Установлено Cell.Formula для присвоения последовательности формул, совместимых с Excel. Прочитайте текст отображения через Cell.StringValue и сырой стоимости через: Cell.Value.
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.9Стилизация ячеек
Восстановление и изменение файла . Style объект для любой ячейки с: Cell.GetStyle() и в том числе: Cell.SetStyle().- Да , это так . Style класс обеспечивает: Font (черный, курсивный и размер), ForegroundColor, Pattern (от типа: FillPattern), HorizontalAlignment (используя: HorizontalAlignmentType), и пограничный контроль через Borders.
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");Условное форматирование
Worksheet.ConditionalFormattings возвращает a ConditionalFormattingCollection.- Позвони . Add() создать набор правил, затем AddCondition() Добавить правила с использованием: FormatConditionType и в том числе: OperatorType.Типы поддерживаемых условий включают: CellValue, Expression, ColorScale, DataBar, и IconSet.
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");Валидация данных
Worksheet.Validations возвращает a ValidationCollection.- Позвони . Add(CellArea) создать Validation для диапазона сотовых устройств. Type использование имущества ValidationType (List, Decimal, или Custom). Конфигурация Formula1, Formula2, Operator, InputTitle, InputMessage, ErrorTitle, и ErrorMessage.
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");Автофильтр
Worksheet.AutoFilter - Это не так. AutoFilter Объект. AutoFilter.Range для определения диапазона строки заголовка. Access AutoFilter.FilterColumns (сбор) и призыв к Add(columnIndex) активировать фильтрацию на конкретной колонке.
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");Гиперссылки и определённые названия
Worksheet.Hyperlinks является: HyperlinkCollection.- Позвони . Add() для вставки внешних URL-адресов, внутренних ссылок на ячейку или ссылки mailto. Hyperlink.TextToDisplay и в том числе: Hyperlink.ScreenTip для текста, обращенного к пользователю. Workbook.DefinedNames является: DefinedNameCollection; звонит Add(name, refersTo) создавать названия диапазонов.
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");Настройка страницы
Worksheet.PageSetup Контролируют маржи печати, ориентацию, размер бумаги, площадь печатью, строки/колоны заголовков, заглавные слова и разрывы страниц. Использование PageOrientationType и в том числе: PaperSizeType - Я не знаю.
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");Управление рабочим листом
Добавление, переименование, сокрытие и переустройство рабочих листов через WorksheetCollection. WorksheetCollection.Add(name) возвращает индекс нового листа. Worksheet.VisibilityType использование: VisibilityType.Слияние клеток с Cells.Merge() и размер управления строками/столбнями через: Cells.Rows и в том числе: Cells.Columns.
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");Советы и лучшие практики
- Всегда ловить.
WorkbookLoadExceptionпри загрузке файлов с путей, предоставленных пользователем. - Использование:
Cell.PutValue()с точной формой .NET, которую вы собираетесь хранить passdecimalдля валюты,DateTimeна свиданиях. - Читайте .
Cell.StringValueдля отображения текста; использованиеCell.Valueкогда вам нужен необработанный объект .NET. - Создать наборы правил форматирования на условиях в самом широком диапазоне, который вам нужен правила за ряд дорогостоящие для больших листов.
- Позвони .
wb.Save()один раз в конце, а не после каждой ячейки написать.
Общие проблемы
| Выпуск | Причина . | Устранить |
|---|---|---|
WorkbookLoadException открытый | Коррумпированная структура ZIP в XLSX | Набор LoadOptions.TryRepairPackage = true |
Формула возвращается пустой . StringValue | Формула не пересчитывается по нагрузке. | Доступ к ним Cell.StringValue после Workbook.Save() обратный путь |
| Адрес гиперссылки показывает необработанный URL-адрес | TextToDisplay не установленный | Набор Hyperlink.TextToDisplay после Add() |
| Вкладка не видна в рабочем листе | VisibilityType настроить на: Hidden | Набор ws.VisibilityType = VisibilityType.Visible |
FAQ
Требуется ли для Aspose.Cells FOSS в .NET Microsoft Office?
Нет, библиотека состоит из чистого управляемого кода без зависимости от Office, Excel или COM interop.
Какие форматы файлов поддерживаются?
XLSX (читать и писать). CSV, ODS, PDF и бинарные XSL не поддерживаются в этом выпуске.
Могу ли я использовать эту библиотеку в коммерческом приложении?
Да. Aspose.Cells FOSS опубликован под лицензией MIT, которая позволяет неограниченное коммерческое использование без роялти.
Какова минимальная версия .NET?
.NET 6.0 или более поздней версии.
Как я наношу цвет фона в ячейку?
Набор style.Pattern = FillPattern.Solid и в том числе: style.ForegroundColor = Color.FromArgb(...), тогда позвони . cell.SetStyle(style).
Справочное резюме API
| Класс / метод | Описание: |
|---|---|
Workbook | Корневой класс создать, загрузить и сохранить рабочие книги |
Workbook.Worksheets | Возвращает: WorksheetCollection |
Workbook.Save(path) | Сохраняет сборник на диске . |
Workbook.DefinedNames | Сборка названий диапазонов |
Worksheet.Cells | Доступ к сети сотовой связи |
Worksheet.ConditionalFormattings | Набор правил форматирования с условием |
Worksheet.Validations | Правила проверки данных |
Worksheet.AutoFilter | Конфигурация автоматического фильтра |
Worksheet.Hyperlinks | Сборник гиперссылок |
Worksheet.PageSetup | Настройки расписания печати |
Cell.PutValue() | Написать данные в клетках |
Cell.Formula | Строка формул, совместимая с Excel |
Cell.GetStyle() / Cell.SetStyle() | Стиль ячейки для чтения/записи |
Style.Pattern | Описание заполнения (FillPattern (включая) |
Style.HorizontalAlignment | Выстраивание ячеек (HorizontalAlignmentType) |
LoadOptions | Варианты загрузки файлов с допустимой погрешностью |