¿Cómo hacer que las columnas sean de ancho automático cuando los textos en columnas son largos?
Yo uso este codigo
Worksheet.Column(colIndex).AutoFitColumn() 'on all columns'
Worksheet.cells.AutoFitColumns()
Worksheet.Column(colIndex).BestFit = True 'on all columns'
Ninguno de estos métodos está funcionando.
¿Hay alguna forma de hacerlo funcionar?
Nota: Algunos de mis textos usan Unicode.
Respuestas:
Use
AutoFitColumns
, pero debe especificar las celdas, supongo que toda la hoja de trabajo:VB.NET
C#
Tenga en cuenta que debe llamar a este método después de completar la hoja de trabajo.
fuente
Worksheet.Calculate()
primero para poder determinar el valor de esas celdas.He usado este código con la versión 3.1.3.0 de EPPlus y está funcionando:
donde una hoja de trabajo es la variable que hace referencia a la hoja de trabajo que he creado en mi código (¡no una clase con un método estático!).
Obviamente, debe llamar a este método después de haber llenado las columnas .
fuente
Sé que esta es una pregunta antigua, pero utilizo el siguiente código y parece abordar directamente lo que ha intentado hacer.
fuente
Solo quería señalar que puede ajustar celdas sin especificar el rango, solo asegúrese de llamar a esto después de haber formateado todas las columnas, etc.
fuente
Sé que es un poco tarde, pero he tenido el mismo problema hoy. Si tiene un
worksheet.DefaultColWidth
definido, no funcionará. Eliminé esa línea y agreguéWorksheet.cells.AutoFitColumns();
y funciona ahora.fuente
sheet.Cells.AutoFitColumns()
es más simple, gracias por el consejo! En ClosedXml, sísheet.Columns().AdjustToContents()
Está funcionando bien para mí.
Tratar:
fuente
Tuve que usar
worksheet.Column(1).AutoFit(0);
AutoFit () no estaba haciendo el truco.fuente
Necesitará calcular el ancho. No hay una función de tamaño automático en la biblioteca que funcione como lo desea.
Autofitcolumn no funcionará con texto ajustado y celdas con fórmulas.
Mire http://epplus.codeplex.com/discussions/218294?ProjectName=epplus para ver ejemplos de cómo puede resolver el problema.
fuente
.NET Core como sucesor de .NET ya no admite la función de autoajustar celdas con la biblioteca EPPplus.
o
causa excepción:
El ensamblaje System.Drawing depende de las bibliotecas específicas de GDI y Windows que deben reemplazarse por otra solución. La solución para este problema es para mí desconocida.
fuente
Yo uso esto y está funcionando bien.
fuente