Administrar hojas de cálculo de archivos de Microsoft Excel

Aspose.Cells proporciona una clase, Workbook, que representa un archivo de Excel. La clase Workbook contiene una colección worksheets que permite acceder a cada hoja de cálculo en el archivo de Excel.

Una hoja de cálculo está representada por la clase Worksheet. La clase Worksheet proporciona una amplia gama de propiedades y métodos para administrar las hojas de cálculo.

Cómo agregar hojas de cálculo a un nuevo archivo de Excel

Para crear un nuevo archivo de Excel programáticamente:

  1. Cree un objeto de la clase Workbook.
  2. Llame al método add de la clase WorksheetCollection. Se añade automáticamente una hoja de cálculo vacía al archivo de Excel. Se puede hacer referencia a ella pasando el índice de hoja de la nueva hoja de cálculo a la colección worksheets.
  3. Obtenga una referencia de la hoja de cálculo.
  4. Realice el trabajo en las hojas de cálculo.
  5. Guarde el nuevo archivo de Excel con las nuevas hojas de cálculo llamando al método save de la clase Workbook.
from aspose.cells import Workbook
from os import os, path
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Create directory if it is not already present.
IsExists = path.isdir(dataDir)
if notIsExists:
os.makedirs(dataDir)
# Instantiating a Workbook object
workbook = Workbook()
# Adding a new worksheet to the Workbook object
i = workbook.worksheets.add()
# Obtaining the reference of the newly added worksheet by passing its sheet index
worksheet = workbook.worksheets[i]
# Setting the name of the newly added worksheet
worksheet.name = "My Worksheet"
# Saving the Excel file
workbook.save(dataDir + "output.out.xls")

Cómo agregar hojas de cálculo a una hoja de cálculo prediseñada

El proceso de agregar hojas de cálculo a una hoja de cálculo predefinida es igual al de agregar una nueva hoja de cálculo, excepto que el archivo de Excel ya existe, por lo que debe abrirse antes de que se agreguen las hojas de cálculo. Una hoja de cálculo predefinida puede ser abierta por la clase Workbook.

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
InputPath = dataDir + "book1.xlsx"
# Creating a file stream containing the Excel file to be opened
fstream = open(InputPath, "rb")
# Opening the Excel file through the file stream
workbook = Workbook(fstream)
# Adding a new worksheet to the Workbook object
i = workbook.worksheets.add()
# Obtaining the reference of the newly added worksheet by passing its sheet index
worksheet = workbook.worksheets[i]
# Setting the name of the newly added worksheet
worksheet.name = "My Worksheet"
# Saving the Excel file
workbook.save(dataDir + "output.xlsx")

Cómo acceder a hojas de cálculo mediante el nombre de la hoja

Acceda a cualquier hoja de cálculo especificando su nombre o índice

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
InputPath = dataDir + "book1.xlsx"
# Creating a file stream containing the Excel file to be opened
fstream = open(InputPath, "rb")
# Instantiating a Workbook object
# Opening the Excel file through the file stream
workbook = Workbook(fstream)
# Accessing a worksheet using its sheet name
worksheet = workbook.worksheets.get("Sheet1")
cell = worksheet.cells.get("A1")
print(cell.value)

Cómo eliminar hojas de cálculo mediante el nombre de la hoja

Para eliminar hojas de cálculo de un archivo, llame al método remove_by_name de la clase WorksheetCollection. Pase el nombre de la hoja al método remove_by_name para eliminar una hoja de cálculo específica

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Creating a file stream containing the Excel file to be opened
fstream = open(dataDir + "book1.xls", "rb")
# Instantiating a Workbook object
# Opening the Excel file through the file stream
workbook = Workbook(fstream)
# Removing a worksheet using its sheet name
workbook.worksheets.remove_by_name("Sheet1")
# Save workbook
workbook.save(dataDir + "output.out.xls")

Cómo eliminar hojas de cálculo mediante el índice de la hoja

Eliminar hojas de cálculo por nombre funciona bien cuando se conoce el nombre de la hoja de cálculo. Si no conoce el nombre de la hoja de cálculo, utilice el método remove_by_index que toma el índice de la hoja de cálculo en lugar de su nombre.

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Creating a file stream containing the Excel file to be opened
fstream = open(dataDir + "book1.xls", "rb")
# Instantiating a Workbook object
# Opening the Excel file through the file stream
workbook = Workbook(fstream)
# Removing a worksheet using its sheet index
workbook.worksheets.remove_by_index(0)
# Save workbook
workbook.save(dataDir + "output.out.xls")

Cómo activar hojas y hacer que una celda esté activa en la hoja de cálculo

A veces, necesita que una hoja de cálculo específica esté activa y visible cuando un usuario abre un archivo de Microsoft Excel en Excel. De manera similar, es posible que desee activar una celda específica y establecer las barras de desplazamiento para mostrar la celda activa Aspose.Cells es capaz de realizar todas estas tareas

Una hoja activa es una hoja en la que está trabajando: el nombre de la hoja activa en la pestaña aparece en negrita de forma predeterminada

Una celda activa es una celda seleccionada, la celda en la que se ingresa datos cuando comienza a escribir. Solo una celda está activa a la vez. La celda activa se resalta con un borde grueso

Cómo activar hojas y hacer que una celda esté activa

Aspose.Cells proporciona llamadas específicas de API para activar una hoja y una celda. Por ejemplo, la propiedad Aspose.Cells.WorksheetCollection.active_sheet_index es útil para establecer la hoja activa en un libro de trabajo De manera similar, la propiedad Aspose.Cells.Worksheet.active_cell se usa para establecer y obtener una celda activa en la hoja de cálculo

Para asegurarse de que las barras de desplazamiento horizontal o vertical estén en la posición del índice de fila y columna que desea mostrar datos específicos, use las propiedades Aspose.Cells.Worksheet.first_visible_row y Aspose.Cells.Worksheet.first_visible_column

El siguiente ejemplo muestra cómo activar una hoja de cálculo y hacer que una celda sea activa en ella. En la salida generada, las barras de desplazamiento se desplazarán para que la segunda fila y la segunda columna sean su primera fila y columna visibles

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Instantiate a new Workbook.
workbook = Workbook()
# Get the first worksheet in the workbook.
worksheet1 = workbook.worksheets[0]
# Get the cells in the worksheet.
cells = worksheet1.cells
# Input data into B2 cell.
cells.get(1, 1).put_value("Hello World!")
# Set the first sheet as an active sheet.
workbook.worksheets.active_sheet_index = 0
# Set B2 cell as an active cell in the worksheet.
worksheet1.active_cell = "B2"
# Set the B column as the first visible column in the worksheet.
worksheet1.first_visible_column = 1
# Set the 2nd row as the first visible row in the worksheet.
worksheet1.first_visible_row = 1
# Save the excel file.
workbook.save(dataDir + "output.xls")