duda con jexcel

estoy trabajando con la libreria jexcel todo esta m uy bien pero, al momento de crear un archivo excel me limita para darle formato entonces lo que hice fue crear una plantilla con formato base en excel y solamente setearle los datos que requiero pero no me respetan el formato de mi plantilla excel me gustaria saber si hay alguna manera de dar un formato mas definido desde java y la libreria o que me recomendarian y tambien cuando lo ejecuto tampoco me respeta los acentos de mi plantilla....

saludos espero alguien pueda ayudarme

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Nopalin

Un ejemplo

Claro que lo hay, aqui te pego parte de un código que tengo para hacer eso, lo malo que si es medio resbucado:

 

Incluso si checas la api, puedes cambiar el color del texto, mergear celdas, cambiar los borders... etc

sobres

Imagen de neko069

Orale, eso mismo hacía yo con

Orale, eso mismo hacía yo con Apache POI, y por el ejemplo, es bastante similar....

Error al tratar de obtener una fecha del excel

Hola tengo una duda con respecto al la lectura de datos del tipo Fecha.
Por ejemplo yo tengo un Excel en el cual 2 columnas son fechas, pero a la hora de leerlas y pasarlas a un arreglo bidimencional de String la fecha se corta.

por ejemplo

FechaInicio | FechaFin |

01/11/2014 | 01/11/2014 |
01/11/2014 | 02/11/2014 |

a la hora de pasarlos a un arreglo de esta forma

String [][]datos ;
Workbook libro;

libro = Workbook.getWorkbook(archivo);
Sheet hoja1 = libro.getSheet(0);

datos=new String[hoja1.getRows()][hoja1.getColumns()];

//---------------------------------------------------------------------------------------------------------
for(int fila=2 ;fila < hoja1.getRows();fila++){
for(int columna=0; columna < hoja1.getColumns();columna++){
datos[fila][columna]=hoja1.getCell(columna,fila).getContents();
System.out.println(datos[fila][columna]);
nomcolumnas[columna]=" ";
}
}
// -------------------------------------------------------------------------------------------------------

pero a la hora imprimirlo sale el siguiente formato:

1/11/14 | 1/11/14 |
1/11/14 | 2/11/14 |

Cabe mencionar que le hice un debbug para saber si me estaba trayendo correctamente la fecha y realmente
lo que me trae es la fecha cortada, no se si deba de obtener el contenido de la celda con otros metodos.


Hasta ahora para resolverlo le he cambiado el tipo de Celda Pero al EXCEL a tipo texto y entonces me toma bien la fecha, pero no es lo que deseo, espero y me puedas ayudar

Re: Java Excel API y fechas

Hasta ahora para resolverlo le he cambiado el tipo de Celda Pero al EXCEL a tipo texto y entonces me toma bien la fecha, pero no es lo que deseo, espero y me puedas ayudar

Quizás si adaptas esta solución que aparece en StackOverflow te tome bien la fecha y sea lo que deseas. ;)

~~~

Gracias me funciono muy bien.

Gracias por la solucion, lo adapte de la siguiente forma:

for(int fila=2;fila < hoja1.getRows();fila++){
for(int columna=0;columna < hoja1.getColumns();columna++){
datos[fila][columna]= getContenido(hoja1.getCell(columna,fila));
//datos[fila][columna]=hoja1.getCell(columna,fila).getContents();
nomcolumnas[columna]=" ";
}
}

public String getContenido(jxl.Cell celda){
jxl.write.DateTime aux = null;
if(celda.getType() == jxl.CellType.DATE){
aux = (DateTime) celda;
SimpleDateFormat sdf=new SimpleDateFormat("dd-MM-yyyy");
return sdf.format(aux.getDate());
}
else{
return celda.getContents();
}
}