Obtenir des avertissements lors du chargement du fichier Excel

Scénarios d’utilisation possibles

Parfois, l’utilisateur essaie de charger le classeur qui est quelque peu corrompu mais chargeable. Dans ce cas, Aspose.Cells lance des avertissements lors du chargement du classeur. Vous pouvez attraper ces avertissements en implémentant l’interface IWarningCallback et en réglant la propriété LoadOptions.WarningCallback.

Obtenir des avertissements lors du chargement d’un fichier Excel

Le code d’exemple suivant explique comment obtenir des avertissements lors du chargement d’un fichier Excel. Le code charge le fichier Excel d’exemple qui lance l’avertissement DuplicateDefinedName lors du chargement. Cet avertissement est ensuite capturé par la méthode IWarningCallback.Warning() qui imprime les messages d’avertissement dans la console. Le code enregistre ensuite le classeur en tant que fichier Excel de sortie. Si vous ouvrez le fichier Excel d’exemple dans Microsoft Excel, il affichera également cet avertissement comme le montre cette capture d’écran. Veuillez également vérifier la sortie de la console du code ci-dessous pour mieux comprendre.

todo:image_alt_text

Code d’exemple

//Implement IWarningCallback interface to catch warnings while loading workbook
public class WarningCallback implements IWarningCallback
{
public void warning(WarningInfo warningInfo)
{
if(warningInfo.getWarningType() == WarningType.DUPLICATE_DEFINED_NAME)
{
System.out.println("Duplicate Defined Name Warning: " + warningInfo.getDescription());
}
}
}
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(GetWarningLoadingAnExcel.class) + "loading_saving/";
//Create load options and set the WarningCallback property
//to catch warnings while loading workbook
LoadOptions options = new LoadOptions();
options.setWarningCallback(new WarningCallback());
//Load the source excel file
Workbook book = new Workbook(dataDir + "sampleDuplicateDefinedName.xlsx", options);
//Save the workbook
book.save(dataDir + "outputDuplicateDefinedName.xlsx");

Sortie console

Voici la sortie de la console du code ci-dessus lors de son exécution avec le fichier Excel d’exemple fourni.

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