Los archivos de Excel (XLS, [XLSX][2] y [PDF][3] se encuentran entre los formatos de documentos que se utilizan ampliamente en casi todas las empresas. Para estos archivos de uso común, hay muchos escenarios en los que necesita convertir un archivo a otro formato.En este artículo, aprenderemos diferentes formas de cómo convertir hojas de cálculo de Excel a formato PDF usando C# con aplicaciones .NET.

Convierta una hoja de cálculo de Excel a PDF usando C#
  • [.NET API para conversión de archivos de Excel a PDF][4]
  • [Conversión de hojas de Excel a PDF][5]
  • [Secuencia de conversión de hojas de Excel a PDF][6]
  • [Lista específica de conversión de hojas de Excel a PDF][7]
  • [Convertir rango de celdas seleccionado de hoja de Excel a PDF][8]

.NET API para conversión de archivos de Excel a PDF

[GroupDocs.Conversion][9] proporciona API que permiten que los archivos de Excel se conviertan a formato PDF dentro de las aplicaciones .NET. En este artículo, utilizaremos [GroupDocs.Conversion for .NET][10] para convertir los datos de los archivos XLS/XLSX de Excel a formato PDF. Además, la API admite la conversión de muchos otros formatos de archivo, como documentos de procesamiento de texto, hojas de cálculo, presentaciones, libros electrónicos, imágenes, etc., que se mencionan en la [documentación][11].

Puede descargar el instalador DLL o MSI desde la [sección de descargas][12] o instalar la API en su aplicación .NET a través de [NuGet][13].

PM> Install-Package GroupDocs.Conversion

Convertir hojas de Excel a PDF - C#

Los siguientes pasos convierten el libro de trabajo completo (todas las hojas) a formato PDF usando C#.

  • Prepare las opciones de carga usando [SpreadsheetLoadOptions][14].
  • Cargue la hoja de cálculo de Excel usando [Convertidor][15].
  • Llame al método [Convert()][16] usando [PdfConvertOptions][17] para convertir todas las hojas y guardarlas en formato PDF.

El siguiente es el código fuente de C# sobre cómo convertir el libro completo de Excel a PDF dentro de la aplicación .NET.

/*
 * Convierta todas las hojas de Excel a formato PDF usando C#
 */
// Prepare las opciones de carga y el rango para el archivo XLSX de origen
Func<LoadOptions> loadOptions = () => new SpreadsheetLoadOptions
{
    OnePagePerSheet = true
};
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx", loadOptions))
{
    // Convierta y guarde la hoja de cálculo en formato PDF
    converter.Convert(@"path/all-sheets-converted.pdf", new PdfConvertOptions());
}
Convertir PDF desde datos de Excel

Secuencia de conversión de hojas de Excel a PDF - C#

No siempre es necesario transformar el libro de trabajo completo. También podemos convertir cualquier número consecutivo de hojas. Los siguientes son los pasos para convertir cualquier subsecuencia de la(s) hoja(s) del libro de trabajo de Excel en formato PDF usando C#.

  • Cargue el archivo de Excel usando el [Convertidor][18].
  • Defina las opciones de conversión usando [PdfConvertOptions][19].
  • Configure el número de hoja inicial y el número de hojas adicionales en secuencia.
  • Llame al método [Convert()][20] con las opciones de conversión para obtener el subconjunto de hojas en secuencia guardadas en formato PDF.

El siguiente es el código fuente de C# que convierte las hojas en secuencia, es decir, los números de hoja 2,3 y 4 a PDF dentro de la aplicación .NET.

/*
 * Convierta una secuencia de hojas de Excel a formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Establecer el número de hoja inicial y el recuento de hojas consecutivas
    var convertOptions = new PdfConvertOptions()
    {
        PageNumber = 2,
        PagesCount = 3
    };
    // Convierta y guarde la hoja de cálculo en formato PDF
    converter.Convert(@"path/sequential-sheets-converted.pdf", convertOptions);
}

Conversión de hojas de Excel específicas a PDF - C#

Simplemente podemos proporcionar la lista de números de hoja para la conversión de hojas específicas. Los siguientes son los pasos para convertir cualquier lista específica de números de hoja en formato PDF usando C#.

  • Cargue el archivo de hoja de cálculo usando el [Convertidor][21].
  • Seleccione los números de las hojas y configúrelos como lista usando [PdfConvertOptions][22].
  • Llame al método [Convert()][23] con las opciones de conversión para convertir las hojas enumeradas a formato PDF.

El siguiente fragmento de código C# convierte los números de hoja 1, 3 y 5 a PDF dentro de la aplicación .NET.

/*
 * Convierta la lista especificada de hojas de Excel a formato PDF usando C#
 */
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
    // Establezca la lista en números de hoja al convertir
    var convertOptions = new PdfConvertOptions()
    {
        Pages = new System.Collections.Generic.List<int> { 1,3,5}
    };
    // Convierta y guarde la hoja de cálculo en formato PDF
    converter.Convert(@"path/selected-sheets-conversion.pdf", convertOptions);
}

Convierta el rango de celdas seleccionado de la hoja de Excel a PDF - C#

Por último, pero no menos importante, de hecho, el más complicado, también podemos convertir cualquier rango de celdas de hoja (s) de Excel de una manera casi similar a otros enfoques. Los siguientes son los pasos para convertir cualquier rango de celdas de la(s) hoja(s) del libro de trabajo en formato PDF usando C#.

  • En primer lugar, defina el rango de celdas para la conversión mediante [SpreadsheetLoadOptions][24].
  • Cargue el archivo de hoja de cálculo usando el [Convertidor][25].
  • Seleccione las hojas ya sea por números de hoja exactos o subsecuencia usando [PdfConvertOptions][26].
  • Llame al método [Convert()][27] con las opciones de conversión para convertir el rango de celdas seleccionado de las hojas seleccionadas en formato PDF.

El siguiente código convierte el rango de celdas (A1:C20) de los números de hoja 2, 3 y 4 a formato PDF usando C#.

/*
 * Convierta el rango de celdas especificado de hojas de Excel especificadas a formato PDF usando C#
 */
// Prepare las opciones de carga y el rango para el archivo XLSX de origen
Func<LoadOptions> loadOptions = () => new SpreadsheetLoadOptions
{
    ConvertRange = "A1:C20"
};
using (var converter = new Converter(@"path/spreadsheet.xlsx", loadOptions))
{
    var convertOptions = new PdfConvertOptions()
    {
        PageNumber = 2,
        PagesCount = 3
        // Páginas = nuevo System.Collections.Generic.List<int> { 2,3,4}
    };
    // Guardar como PDF después de la conversión
    converter.Convert(@"path/cell-range-converted.pdf", convertOptions);
}

Conclusión

Para concluir, aprendimos diferentes formas de convertir hojas de cálculo de Excel a formato PDF usando C#. En primer lugar, buscamos convertir el libro de trabajo completo a formato PDF, luego convertimos la subsecuencia de hojas. Más tarde, aprendimos cómo convertir cualquier hoja (s) al proporcionar la lista de números de hoja exactos y, por último, obtuvimos el archivo PDF del rango de celdas seleccionado de las hojas seleccionadas.

Obtenga más información sobre GroupDocs.API de conversión en la [documentación][28]. Para consultas, contáctenos a través del [foro][29].

Ver también

  • [Convertir hoja de Excel a CSV y viceversa en C#][30]
  • [Hojas de Excel con marca de agua usando C#][31]
  • [Archivos PDF de marca de agua usando C#][32]
  • [Convertir documentos a Excel (XLS, XLSX) en C#][33]

[2]: https://docs.fileformat.com/spreadsheet/xlsx/) [3]: https://docs.fileformat.com/pdf/ [4]: #excel-conversion-dotnet-api [5]: #excel-to-pdf [6]: #sheets-sequence-to-pdf [7]: #list-of-sheets-to-pdf [8]: #cell-ranges-to-pdf [9]: https://products.groupdocs.com/conversion/ [10]: https://products.groupdocs.com/conversion/net/ [11]: https://docs.groupdocs.com/conversion/net/supported-document-formats/ [12]: https://downloads.groupdocs.com/conversion [13]: https://www.nuget.org/packages/groupdocs.conversion [14]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.load/spreadsheetloadoptions [15]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter [16]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter/methods/convert/index [17]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.convert/pdfconvertoptions [18]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter [19]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.convert/pdfconvertoptions [20]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter/methods/convert/index [21]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter [22]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.convert/pdfconvertoptions [23]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter/methods/convert/index [24]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.load/spreadsheetloadoptions [25]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter [26]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion.options.convert/pdfconvertoptions [27]: https://apireference.groupdocs.com/conversion/net/groupdocs.conversion/converter/methods/convert/index [28]: https://docs.groupdocs.com/conversion [29]: https://forum.groupdocs.com/ [30]: https://blog.groupdocs.com/es/2021/08/18/convert-excel-xls-xlsx-and-csv-in-csharp/ [31]: https://blog.groupdocs.com/es/2021/11/04/watermark-excel-sheets-using-csharp/ [32]: https://blog.groupdocs.com/es/2021/07/27/watermark-pdf-files-using-csharp/ [33]: https://blog.groupdocs.com/es/2021/04/13/convert-document-to-excel-xls-xlsx-in-csharp/