2012-06-18 100 views
5

Estoy cargando datos en excel desde datatable usando el método LoadFromDataTable y luego cambié el formato de celda a entero aún muestra el error "El número en esta celda está formateado como texto o precedido por un apóstrofo ".convirtiendo en entero en excel usando EPPlus (asp.net)

La celda se mostraba solo en el lado derecho y el formato de número solo en la propiedad de la celda.

Todavía no entiendo por qué estoy recibiendo este error ??.

Dim wsManufacturing As ExcelWorksheet = pck.Workbook.Worksheets.Add("Manufacturing") 
wsManufacturing.Cells("A1").LoadFromDataTable(dtManufacturing, True) 
Using col As ExcelRange = wsManufacturing.Cells(2, 2, 2 + dtManufacturing.Rows.Count, 2) 
    col.Style.Numberformat.Format = "#,##0" 
    col.Style.HorizontalAlignment = ExcelHorizontalAlignment.Right 
End Using 

enter image description here

Respuesta

-1

cambiar el formato del texto a número no cambia la naturaleza de la entrada que estaba en la celda antes de que el cambio de formato.

Para cambiar las entradas que originalmente eran representaciones textuales de números

  1. Cambiar el formato de celda de Número
  2. Introduzca un 1 en alguna célula
  3. Edición/Copiar
  4. Seleccione la celda (s) con los números de texto
  5. Pegado especial/Multiplicar
  6. Borrar el original 1
+3

una solución programática! –

2

Se puede hacer así:

//strValue="98.5%"; 
double realValue=double.Parse(strValue.Replace("%", string.Empty)); 
Worksheet.Cells[row + 1, col].Style.Numberformat.Format = "#0\\.00%"; 
Worksheet.Cells[row + 1, col].Value = realValue; 
no
Cuestiones relacionadas