with recorrer read officeopenxml ejemplos create c# excel epplus

recorrer - officeopenxml c#



Formato de nĂºmero EPPlus (2)

Tengo una hoja de Excel generada con Epplus, estoy experimentando algunos puntos difíciles y deseo ser dirigido por alguien que haya resuelto un desafío similar. Necesito aplicar el formato de número a un valor doble y quiero presentarlo en excel como este.

  • 8 -> 8.0
  • 12 -> 12.0
  • 14.54 -> 14.5
  • 0 -> 0.0

Aqui esta mi codigo

ws.Cells[row, col].Style.Numberformat.Format = "##0.0";

El archivo de Excel final siempre agrega E + 0 al final de este formato y, por lo tanto, presenta los valores finales como este.

  • 8 -> 8.0E + 0
  • 12 -> 12.0E + 0
  • 14.54 -> 14.5E + 0
  • 0 -> 000.0E + 0

Cuando verifico el formato de las celdas de la hoja de Excel generada, veo que mi formato aparece como ## 0.0E + 2 en lugar de ## 0.0 que apliqué. ¿Qué puede estar mal?


Aquí hay algunas opciones de formato de número para EPPlus:

//integer (not really needed unless you need to round numbers, Excel with use default cell properties) ws.Cells["A1:A25"].Style.Numberformat.Format = "0"; //integer without displaying the number 0 in the cell ws.Cells["A1:A25"].Style.Numberformat.Format = "#"; //number with 1 decimal place ws.Cells["A1:A25"].Style.Numberformat.Format = "0.0"; //number with 2 decimal places ws.Cells["A1:A25"].Style.Numberformat.Format = "0.00"; //number with 2 decimal places and thousand separator ws.Cells["A1:A25"].Style.Numberformat.Format = "#,##0.00"; //number with 2 decimal places and thousand separator and money symbol ws.Cells["A1:A25"].Style.Numberformat.Format = "€#,##0.00"; //percentage (1 = 100%, 0.01 = 1%) ws.Cells["A1:A25"].Style.Numberformat.Format = "0%"; //accounting number format ws.Cells["A1:A25"].Style.Numberformat.Format = "_-$* #,##0.00_-;-$* #,##0.00_-;_-$* /"-/"??_-;_-@_-";

No cambie los separadores decimales y mil a su propia localización. Excel lo hará por ti.

Al solicitar algunas opciones de formato de DateTime.

//default DateTime pattern worksheet.Cells["A1:A25"].Style.Numberformat.Format = DateTimeFormatInfo.CurrentInfo.ShortDatePattern; //custom DateTime pattern worksheet.Cells["A1:A25"].Style.Numberformat.Format = "dd-MM-yyyy HH:mm";


Para obtener una lista de formatos estándar / de muestra, uno podría:

  1. en Excel, haga clic derecho en cualquier celda, seleccione "Formato de celdas"
  2. En la lista Categoría: seleccione el formato deseado.
  3. luego seleccione "Personalizado" y en el cuadro de texto "Tipo" mostrará la cadena de formato deseada / seleccionada.

Esto funciona para cualquier tipo de datos en XL.