Obtenir l indice de colonne maximal dans la ligne et l indice de ligne maximal dans la colonne
Scénarios d’utilisation possibles
Lorsque vous avez seulement besoin de manipuler certaines données sur les lignes ou les colonnes, vous devez connaître la plage de données des lignes et des colonnes. Aspose.Cells for Node.js via C++ offre cette fonctionnalité. Pour obtenir l’indice de la colonne maximale d’une ligne, vous pouvez utiliser les méthodes Row.getLastCell() et Row.getLastDataCell(), puis utiliser la méthode Cell.getColumn() pour obtenir l’indice de la colonne maximale et l’indice de la colonne de données maximale. Mais pour obtenir l’indice de la ligne maximale et l’indice de la ligne de données maximale d’une colonne, vous devez créer une plage sur la colonne, puis parcourir la plage pour trouver la dernière cellule, et enfin appeler la méthode Cell.getRow() sur la cellule.
Aspose.Cells for Node.js via C++ fournit les propriétés et méthodes suivantes pour vous aider à atteindre vos objectifs.
Obtenir l’indice de la colonne maximale dans une ligne et l’indice de la ligne maximale dans une colonne
Cet exemple montre comment :
- Charger le fichier d’exemple.
- Obtenir la ligne qui a besoin d’obtenir l’indice de colonne maximal et l’indice de colonne de données maximal.
- Appeler la méthode Cell.getColumn() sur la cellule.
- Créez une plage basée sur la colonne.
- Obtenez l’itérateur et parcourez la plage.
- Appeler la méthode Cell.getRow() sur la cellule.
const AsposeCells = require("aspose.cells.node"); | |
const path = require("path"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
const workbook = new AsposeCells.Workbook(dataDir +"sample.xlsx"); | |
const sheet = workbook.getWorksheets().get(0); | |
const cells = sheet.getCells(); | |
const row = cells.checkRow(1); | |
if (row != null) { | |
//get Maximum column index of Row which contains data or style. | |
console.log("Max column index in row: " + row.getLastCell().getColumn()); | |
//get Maximum column index of Row which contains data. | |
console.log("Max data column index in row: " + row.getLastDataCell().getColumn()); | |
} | |
// create the range of column B | |
const columnRange = cells.createRange(1, 1, true); | |
var max_row_index = cells.getMaxRow() + 1; | |
var maxRow = 0; | |
var maxDataRow = 0; | |
for (let row_index = 0; row_index < max_row_index; row_index++) | |
{ | |
var curr_cell = cells.get(row_index, 1); | |
if (curr_cell) | |
{ | |
if (curr_cell.getStringValue()) | |
{ | |
maxDataRow = curr_cell.getRow(); | |
} | |
if (curr_cell.getStringValue() || curr_cell.getHasCustomStyle()) | |
{ | |
maxRow = curr_cell.getRow(); | |
} | |
} | |
} | |
//Maximum row index of Column which contains data or style. | |
console.log("Max row index in Column: " + maxRow); | |
//Maximum row index of Column which contains data. | |
console.log("Max data row index in Column: " + maxDataRow); |