Obtener el índice de celdas
Contents
[
Hide
]
La vista predeterminada de Excel es la referencia de estilo A1, cada columna se define como A, B, C…, y las celdas se nombran como A1, B2, C3… y así sucesivamente.
Es posible que desee saber en qué fila y columna se encuentra esta celda.
Escenarios de uso posibles
Cuando solo necesita manipular un dato específico en la hoja de cálculo por índice de fila y columna, necesita saber los índices de fila y columna de esa celda específica. Aspose.Cells for JavaScript vía C++ ofrece esta función para obtener el índice de fila y columna por el nombre de la fila, columna y celda. Aspose.Cells for JavaScript vía C++ proporciona las siguientes propiedades y métodos para ayudarte a lograr tus objetivos.
- CellsHelper.cellNameToIndex(string)
- CellsHelper.columnIndexToName
- CellsHelper.columnNameToIndex
- CellsHelper.rowIndexToName
- CellsHelper.rowNameToIndex
Nota: La indexación es basada en cero en Aspose.Cells for JavaScript vía C++, pero el id de la fila es uno-based en MS Excel.
Obtener índices de celdas usando Aspose.Cells for JavaScript vía C++
Este ejemplo muestra cómo:
- Crear un libro de trabajo y agregar algunos datos.
- Encontrar la celda específica en la primera hoja de trabajo.
- Obtener el índice de fila e índice de columna por el nombre de la celda.
- Obtener el índice de columna por el nombre de la columna.
- Obtener el índice de fila por el nombre de la fila.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Aspose.Cells Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, CellsHelper } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', () => {
// Create a new workbook
const workbook = new Workbook();
// Access cells of the first worksheet
const cells = workbook.worksheets.get(0).cells;
let cell = cells.get("A1");
cell.putValue("Fruit");
cell = cells.get("B1");
cell.putValue("Count");
cell = cells.get("C1");
cell.putValue("Price");
cell = cells.get("A2");
cell.putValue("Apple");
cell = cells.get("A3");
cell.putValue("Mango");
cell = cells.get("A4");
cell.putValue("Blackberry");
cell = cells.get("A5");
cell.putValue("Cherry");
cell = cells.get("B2");
cell.putValue(5);
cell = cells.get("B3");
cell.putValue(3);
cell = cells.get("B4");
cell.putValue(6);
cell = cells.get("B5");
cell.putValue(4);
cell = cells.get("C2");
cell.putValue(5);
cell = cells.get("C3");
cell.putValue(20);
cell = cells.get("C4");
cell.putValue(30);
cell = cells.get("C5");
cell.putValue(60);
// Find the cell containing "Blackberry"
const curr = cells.find("Blackberry", null);
// Current cell name
const currentCellName = curr.name;
// get row and column index of current cell
const rowCol = CellsHelper.cellNameToIndex(curr.name);
const currRow = rowCol[0];
const currCol = rowCol[1];
// get column name by column index
const columnName = CellsHelper.columnIndexToName(currCol);
// get row name by row index
const rowName = CellsHelper.rowIndexToName(currRow);
// get column index by column name
const columnIndex = CellsHelper.columnNameToIndex(columnName);
// get row index by row name
const rowIndex = CellsHelper.rowNameToIndex(rowName);
const outputs = [];
outputs.push("Current Cell Name: " + currentCellName);
outputs.push("Row Index: " + currRow + " Column Index: " + currCol);
outputs.push("Column Name: " + columnName + " Row Name: " + rowName);
outputs.push("Column Index: " + columnIndex + " Row Index: " + rowIndex);
outputs.push("columnIndex == currCol: " + (columnIndex == currCol));
outputs.push("rowIndex == currRow: " + (rowIndex == currRow));
document.getElementById('result').innerHTML = '<pre>' + outputs.join('\n') + '</pre>';
// Save the workbook and provide download link
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'output.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Excel File';
});
</script>
</html>