Foros del Web » Programación para mayores de 30 ;) » Java »

Generar un Excel a partir de varios Excel desde Java

Estas en el tema de Generar un Excel a partir de varios Excel desde Java en el foro de Java en Foros del Web. Buenos dias a todos, tengo un pequeño problema a la hora de generar, desde java, un excel a partir de varios. No se si me ...
  #1 (permalink)  
Antiguo 11/05/2010, 04:40
 
Fecha de Ingreso: mayo-2010
Mensajes: 5
Antigüedad: 13 años, 11 meses
Puntos: 0
Generar un Excel a partir de varios Excel desde Java

Buenos dias a todos, tengo un pequeño problema a la hora de generar, desde java, un excel a partir de varios. No se si me explico bien, pero lo que pretendo es lo siguiente:

Tengo una carpeta con varios excel y cada uno tiene solo una hoja con datos numericos y texto dependiendo la celda.

Quiero generar un solo excel juntando todos los que tenia, poniendo cada hoja del archivo excel en una hoja.

Resumiendo, pasando de tener excel1.xls, excel2.xls, excel3.xls, excel4.xls (cada uno con una hoja), a tener solo excelTotal.xls (con 4 hojas) y el nombre de cada hoja que sea el del fichero.

Lo unico que he conseguido es pisar la misma hoja una y otra vez.


HSSFWorkbook objWBDestino = null;
ficheros[] = donde tengo metido los fichero con la ruta y todo
archivoSalida = fichero excel donde se guarda todo
objFile_Todas = archivo con la ruta

try {
archivoSalida = new FileOutputStream(objFile_Todas);

for (int i = 0; i<ficheros.length; i++) {
archivoDestino = new FileInputStream(ficheros[i]);

objWBDestino = new HSSFWorkbook(archivoDestino);

archivoDestino.close();

objWBDestino.write(archivoSalida);

}

archivoSalida.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}


A ver si alguno me puede echar una mano, muchas gracias.
  #2 (permalink)  
Antiguo 11/05/2010, 05:04
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Generar un Excel a partir de varios Excel desde Java

No hagas esto

objWBDestino = new HSSFWorkbook(archivoDestino);

dentro del bucle. Hazlo una vez fuera y luego añade hojas (sheets) o recalcula posiciones, según lo que quieras.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 11/05/2010, 05:47
 
Fecha de Ingreso: mayo-2010
Mensajes: 5
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Generar un Excel a partir de varios Excel desde Java

Y el archivoDestino se cargaria con todas los excel? No deberia cargar uno escribir, cargar otro escribir, y asi hasta el ultimo y luego cerrar archivo?
  #4 (permalink)  
Antiguo 11/05/2010, 09:17
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Generar un Excel a partir de varios Excel desde Java

creas un excel para escribir y vas creando hojas en él. Cada hoja la rellenas con el contenido de uno de los ficheros particulares. Posiblemente no puedas hacerlo como pretendes y tengas que leer con poi cada uno de los ficheros de origen.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 11/05/2010, 10:16
 
Fecha de Ingreso: mayo-2010
Mensajes: 5
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Generar un Excel a partir de varios Excel desde Java

Eso si estaria bien si sabes exactamente la cantidad de excel a juntar, pero depende de lo que se ejecute salen mas excel o menos, asi que estaria bien hacerlo en algun tipo de FOR o de guardarlo en algun array o algo parecido.
Pero es que ya estoy saturado y no consigo pensarlo de otra manera.
  #6 (permalink)  
Antiguo 12/05/2010, 02:40
 
Fecha de Ingreso: mayo-2010
Mensajes: 5
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Generar un Excel a partir de varios Excel desde Java

La verdad es que de alguna manera lo que pretendo es CONCATENAR todos los excel en uno, porque si fuese uno nada mas no hay problema, el problema esta a la hora de copiar la hoja de otro excel, al escribirlo en el excelTotal.xls me lo escribe en la primera, y no se como situarme en la 2 hoja

Etiquetas: excel, hssf, workbook
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:15.