Получать предупреждения при загрузке файла Excel

Возможные сценарии использования

Иногда пользователь пытается загрузить книгу, которая отчасти повреждена, но загружаема. В таком случае Aspose.Cells выдает предупреждения при загрузке рабочей книги. Можно перехватить эти предупреждения, реализовав интерфейс IWarningCallback и установив свойство LoadOptions.WarningCallback.

Получение предупреждений при загрузке файла Excel

Приведенный ниже образец кода объясняет, как получить предупреждения при загрузке файла Excel. Код загружает образец файла Excel, который выдает предупреждение DuplicateDefinedName при загрузке. Это предупреждение затем перехватывается методом IWarningCallback.Warning(), который выводит сообщения предупреждения в консоль. Затем код сохраняет книгу в виде выходного файла Excel. Если вы откроете образец файла Excel в Microsoft Excel, он также отобразит вам это предупреждение, как показано на этом скриншоте. Пожалуйста, также проверьте вывод консоли кода ниже для более полного понимания.

todo:image_alt_text

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Implement IWarningCallback interface to catch warnings while loading workbook
private class WarningCallback : IWarningCallback
{
public void Warning(WarningInfo warningInfo)
{
if (warningInfo.WarningType == WarningType.DuplicateDefinedName)
{
Console.WriteLine("Duplicate Defined Name Warning: " + warningInfo.Description);
}
}
}//WarningCallback
//------------------------------------------------------------------
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
//Create load options and set the WarningCallback property
//to catch warnings while loading workbook
LoadOptions options = new LoadOptions();
options.WarningCallback = new WarningCallback();
//Load the source excel file
Workbook book = new Workbook(dataDir + "sampleDuplicateDefinedName.xlsx", options);
//Save the workbook
book.Save(dataDir + "outputDuplicateDefinedName.xlsx");

Вывод в консоль

Ниже приведен вывод консольного вывода вышеуказанного кода при выполнении с предоставленным образцом файла Excel.

Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:Introduction!$D$16:$D$17

Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:Panel!$B$228

Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:'Queries '!$D$14:$D$16