Détecter les cellules fusionnées dans une feuille de calcul

Démonstration

Cet exemple utilise un fichier Microsoft Excel modèle appelé MergeTrial. Il a quelques zones de cellules fusionnées dans une feuille également appelée Fusion d’essai.

Le fichier modèle

todo:image_alt_text

Aspose.Cells fournit la méthode Cells.getMergedCells() qui est utilisée pour obtenir toutes les cellules fusionnées.

Lorsque le code ci-dessous est exécuté, il efface le contenu de la feuille et dé-fusionne toutes les zones de cellules avant d’enregistrer à nouveau le fichier.

Le fichier de sortie

todo:image_alt_text

Exemple de code

Veuillez consulter le code d’exemple suivant pour savoir comment identifier les zones de cellules fusionnées dans une feuille de calcul et les dé-fusionner.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DetectMergedCells.class);
// Instantiate a new Workbook
Workbook wkBook = new Workbook(dataDir + "MergeTrial.xls");
// Get a worksheet in the workbook
Worksheet wkSheet = wkBook.getWorksheets().get("Merge Trial");
// Clear its contents
wkSheet.getCells().clearContents(0, 0, wkSheet.getCells().getMaxDataRow(),
wkSheet.getCells().getMaxDataColumn());
// Get all merged cell aeras
CellArea[] areas = wkSheet.getCells().getMergedAreas();
// Define some variables
int frow, fcol, erow, ecol;
// Loop through the arraylist and get each cellarea to unmerge it
for (int i = areas.length - 1; i > -1; i--)
{
frow = areas[i].StartRow;
fcol = areas[i].StartColumn;
erow = areas[i].EndRow;
ecol = areas[i].EndColumn;
wkSheet.getCells().unMerge(frow, fcol, erow, ecol);
}
// Save the excel file
wkBook.save(dataDir + "output_MergeTrial.xls");

Articles connexes