C# Crear, leer o actualizar documentos de Excel

2023-10-31 03:26:05

Instalado a través de NuGet

PM> Install-Package Spire.XLS

enlaces relacionados

La hoja de cálculo de Excel es un formato de archivo ampliamente utilizado que permite a los usuarios organizar, analizar y presentar datos en formato tabular. La capacidad de interactuar con archivos de Excel mediante programación es muy valiosa, ya que permite la automatización e integración de la funcionalidad de Excel en aplicaciones de software. Esta capacidad es particularmente útil cuando se trabaja con grandes conjuntos de datos, se realizan cálculos complejos o cuando es necesario generar o actualizar datos dinámicamente. En este artículo, aprenderá cómo cree, lea o actualice documentos de Excel en C# y VB.NET utilizando Spire.XLS for .NET.

Instalar Spire.XLS for .NET

Para empezar, debe agregar los archivos DLL incluidos en el paquete Spire.XLS for .NET como referencias en su proyecto .NET. Los archivos DLL se pueden descargar desde este enlace o instalar a través de NuGet.

PM> Install-Package Spire.XLS

Crear un archivo Excel en C#, VB.NET

Spire.XLS for .NET ofrece una variedad de clases e interfaces que puede utilizar para crear y editar documentos de Excel. Aquí hay una lista de clases, propiedades y métodos importantes involucrados en este artículo.

Miembro Descripción
clase de libro de trabajo Representa un modelo de libro de Excel.
Método Workbook.Worksheets.Add() Agrega una hoja de trabajo al libro de trabajo.
Método Workbook.SaveToFile() Guarda el libro en un documento de Excel.
clase de hoja de trabajo Representa una hoja de cálculo en un libro de trabajo.
Propiedad Worksheet.Range Obtiene una celda o rango de celdas específico de la hoja de trabajo.
Propiedad Hoja de trabajo.Rango.Valor Obtiene o establece el valor de una celda.
Propiedad Worksheet.Rows Obtiene una colección de filas en la hoja de trabajo.
Método Worksheet.InsertDataTable() Importa datos de DataTable a la hoja de trabajo.
Clase rango de celdas Representa una celda o rango de celdas en la hoja de trabajo.

Los siguientes son los pasos para crear un documento de Excel desde cero usando Spire.XLS for .NET.

  • Cree un objeto de libro de trabajo.
  • Agregue una hoja de trabajo usando el método Workbook.Worksheets.Add().
  • Escriba datos en una celda específica a través de la propiedad Worksheet.Range.Value.
  • Importe datos de una tabla de datos a la hoja de trabajo utilizando el método Worksheet.InsertDataTable().
  • Guarde el libro en un documento de Excel utilizando el método Workbook.SaveToFile().
  • C#
  • VB.NET
using Spire.Xls;
    using System.Data;
    
    namespace CreateExcelSpreadsheet
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Remove default worksheets
                wb.Worksheets.Clear();
    
                //Add a worksheet and name it "Employee"
                Worksheet sheet = wb.Worksheets.Add("Employee");
    
                //Merge the cells between A1 and G1
                sheet.Range["A1:G1"].Merge();
    
                //Write data to A1 and apply formatting to it
                sheet.Range["A1"].Value = "Basic Information of Employees of Huanyu Automobile Company";
                sheet.Range["A1"].HorizontalAlignment = HorizontalAlignType.Center;
                sheet.Range["A1"].VerticalAlignment = VerticalAlignType.Center;
                sheet.Range["A1"].Style.Font.IsBold = true;
                sheet.Range["A1"].Style.Font.Size = 13F;
    
                //Set row height of the first row
                sheet.Rows[0].RowHeight = 30F;
    
                //Create a DataTable
                DataTable dt = new DataTable();
                dt.Columns.Add("Name");
                dt.Columns.Add("Gender");
                dt.Columns.Add("Birth Date");
                dt.Columns.Add("Educational Background");
                dt.Columns.Add("Contact Number");
                dt.Columns.Add("Position");
                dt.Columns.Add("ID");
                dt.Rows.Add("Allen", "Male", "1990-02-10", "Bachelor", "24756854", "Mechanic", "0021");
                dt.Rows.Add("Patrick", "Male", "1985-06-08", "Master", "59863247", "Mechanic", "0022");
                dt.Rows.Add("Jenna", "Female", "1989-11-25", "Bachelor", "79540352", "Sales", "0023");
                dt.Rows.Add("Tommy", "Male", "1988-04-16", "Master", "52014060", "Mechanic", "0024");
                dt.Rows.Add("Christina", "Female", "1998-01-21", "Bachelor", "35401489", "HR", "0025");
    
                //Import data from DataTable to worksheet
                sheet.InsertDataTable(dt, true, 2, 1, true);
    
                //Set row height of a range
                sheet.Range["A2:G7"].RowHeight = 15F;
    
                //Set column width
                sheet.Range["A2:G7"].Columns[2].ColumnWidth = 15F;
                sheet.Range["A2:G7"].Columns[3].ColumnWidth = 21F;
                sheet.Range["A2:G7"].Columns[4].ColumnWidth = 15F;
    
                //Set border style of a range
                sheet.Range["A2:G7"].BorderAround(LineStyleType.Medium);
                sheet.Range["A2:G7"].BorderInside(LineStyleType.Thin);
                sheet.Range["A2:G2"].BorderAround(LineStyleType.Medium);
                sheet.Range["A2:G7"].Borders.KnownColor = ExcelColors.Black;
    
                //Save to a .xlsx file
                wb.SaveToFile("NewSpreadsheet.xlsx", FileFormat.Version2016);
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

Leer datos de una hoja de trabajo en C#, VB.NET

La propiedad Worksheet.Range.Value devuelve el valor numérico o el valor de texto de una celda como una cadena. Para obtener datos de una hoja de trabajo completa o un rango de celdas, recorra las celdas que contiene. Los siguientes son los pasos para obtener datos de una hoja de trabajo usando Spire.XLS for .NET.

  • Cree un objeto de libro de trabajo.
  • Cargue un documento de Excel utilizando el método Workbook.LoadFromFile().
  • Obtenga una hoja de trabajo específica a través de la propiedad Workbook.Worksheets[index].
  • Obtenga el rango de celdas que contiene datos a través de la propiedad Worksheet.AllocatedRange.
  • Itere a través de las filas y columnas para obtener celdas dentro del rango y devuelva el valor de cada celda a través de la propiedad CellRange.Value.
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace ReadExcelData
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Load an existing Excel file
                wb.LoadFromFile(@"C:\Users\Administrator\Desktop\NewSpreadsheet.xlsx");
    
                //Get the first worksheet
                Worksheet sheet = wb.Worksheets[0];
    
                //Get the cell range containing data
                CellRange locatedRange = sheet.AllocatedRange;
    
                //Iterate through the rows
                for (int i = 0;i < locatedRange.Rows.Length;i++)
                {
                    //Iterate through the columns
                    for (int j = 0; j < locatedRange.Rows[i].ColumnCount; j++)
                    {
                        //Get data of a specific cell
                        Console.Write(locatedRange[i + 1, j + 1].Value + "  ");
    
                    }
                    Console.WriteLine();
                }
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

Actualizar un documento de Excel en C#, VB.NET

Para cambiar el valor de una determinada celda, simplemente vuelva a asignarle un valor a través de la propiedad Worksheet.Range.Value. Los siguientes son los pasos detallados.

  • Cree un objeto de libro de trabajo.
  • Cargue un documento de Excel utilizando el método Workbook.LoadFromFile().
  • Obtenga una hoja de trabajo específica a través de la propiedad Workbook.Worksheets[index].
  • Cambie el valor de una celda en particular a través de la propiedad Worksheet.Range.Value.
  • Guarde el libro en un archivo de Excel utilizando el método Workbook.SaveToFile().
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace UpdateCellValue
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Load an existing Excel file
                wb.LoadFromFile(@"C:\Users\Administrator\Desktop\NewSpreadsheet.xlsx");
    
                //Get the first worksheet
                Worksheet sheet = wb.Worksheets[0];
    
                //Change the value of a specific cell
                sheet.Range["A1"].Value = "Updated Value";
    
                //Save to file
                wb.SaveToFile("Updated.xlsx", ExcelVersion.Version2016);
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

Solicite una licencia temporal

Si desea eliminar el mensaje de evaluación de los documentos generados o deshacerse de las limitaciones de la función, por favor solicitar una licencia de prueba de 30 días para ti.

Ver también