Obtener el índice de columna máximo en fila y el índice de fila máximo en columna

Escenarios de uso posibles

Cuando solo necesita manipular algunos datos en las filas o columnas, necesita conocer el rango de datos de las filas y columnas. Aspose.Cells para Python via .NET ofrece esta característica. Para obtener el índice de columna máximo en una fila, puede obtener las propiedades Row.last_cell y Row.last_data_cell, y luego usar la propiedad Cell.column para obtener el índice de columna máximo e índice de columna de datos máximo. Pero para obtener el índice de fila máximo e índice de fila de datos máximo en una columna, necesita crear un rango en la columna, luego recorrer el rango para encontrar la última celda, y finalmente obtener el atributo Cell.row en la celda.

Aspose.Cells para Python via .NET proporciona las siguientes propiedades y métodos para ayudarlo a alcanzar sus objetivos.

Obtener el índice de columna máximo en fila y el índice de fila máximo en columna usando la biblioteca de Excel de Python de Aspose.Cells

Este ejemplo muestra cómo:

  1. Cargar el archivo de muestra.
  2. Obtener la fila que necesita obtener el índice de columna máximo e índice de columna de datos máximo.
  3. Obtener el atributo Cell.column en la celda.
  4. Crear un rango basado en la columna.
  5. Obtener el iterador y recorrer el rango.
  6. Obtener el atributo Cell.row en la celda.
import io
import aspose.cells
from aspose.cells import Workbook, Worksheet, Cells
workbook = Workbook("sample.xlsx")
sheet = workbook.worksheets[0]
cells = sheet.cells;
row = cells.check_row(1);
if row:
#get Maximum column index of Row which contains data or style.
print("Max column index in row: " + str(row.last_cell.column))
#get Maximum column index of Row which contains data.
print("Max data column index in row: " + str(row.last_data_cell.column))
# create the range of column B
columnRange = cells.create_range(1, 1, True)
max_row_index = cells.max_row + 1
maxRow = 0
maxDataRow = 0
for row_index in range(0,max_row_index):
curr_cell = cells.check_cell(row_index, 1)
if curr_cell and curr_cell.string_value:
maxDataRow = curr_cell.row
if curr_cell and (curr_cell.string_value or curr_cell.has_custom_style):
maxRow = curr_cell.row
# Maximum row index of Column which contains data or style.
print("Max row index in Column: " + str(maxRow))
# Maximum row index of Column which contains data.
print("Max data row index in Column: " + str(maxDataRow))