Abrir un archivo excel desde formulario HTML

Estoy trabajando con unos libros excel los cuales contiene planillas que serán usadas por el departamento de ventas, mi idea es diseñar, si se puede, una presentación en html con distintos botones que abran el archivo .xls que corresponda (tarbajos ha pedido, trabajos standard, trabajos especias, etc) los archivos se encuentran alojados en el servidor de la empresa.
¿Esto qué quiero hacer es posible o es un delirio? He probado algunos métodos pero el que más se aproximo me abre el excel en el navegador del explorer y no es lo que busco

1 respuesta

Respuesta
1
Por un lado, dices:
"mi idea es diseñar, si se puede, una presentación en html con distintos botones que abran el archivo .xls"
, pero por otro lado, dices:
"he probado algunos métodos pero el que más se aproximo me abre el excel en el navegador del explorer y no es lo que busco"
Quieres abrir un excel, pero cuando lo abres dices que no es lo que buscas. ¿Podrías ser más concreto y decirme lo que buscas exactamente? Solo así podré ayudarte, o al menos intentarlo.
No busco que me abra el excel en el explorer, sino que me abra el libro como si clikerar sobre el, no se como explicarlo mejor,
al verlo en el explorer no puedo hacer las modificaciones como cuando trabajas sobre el libro, no se que es lo que he hecho mal, pero si hay forma que me haga lo mismo trabajando desde explorer también me serviría, lo importante es que pueda cargar datos en la planilla, enviarla por mail y guardar los cambios al salir
o sea, no es mi interés poder verlo, sino que los vendedores puedan trabajar sobre él.
Espero que comprendas lo que busco y disculpa si te complico la vida pues no es mi intención.
Gracias
Para darte una solución necesito que me respondas a una pregunta: ¿Utilizas alguna tecnología en el servidor web como php, java, etc? Si es así, se puede hacer lo que quieres, pero si tan solo programas en html no se puede.
Estoy usando java, pero soy nuevo con esto y por eso me interesa practicarlo con este tipo de trabajo. Es más, hasta donde llegue, lo hice por medio de tutoriales y ejemplos que veo a través de internet ya que paso ma horas en el trabajando que libre, si me puedes ir orientando estoy seguro que llegaremos al resultado esperado porque aprendo rápida y tengo mucho interés.
También he tratado aprender php pero se me complico un poco más, así que lo dejare para cuando tenga un poco más de conocimiento con java.
El problema es que si quieres que el archivo se abra sin que se integre en el explorer, tienes que indicar en una cabecera http que el archivo es un adjunto. Eso no lo puedes hacer sin un lenguaje de servidor. Si usas java, lo puedes hacer bien en un servlet, bien en una página jsp.
¿Con cuál de las dos opciones te sientes más cómodo a la hora de programar? Dependiendo de tu respuesta, seguimos.
Me he movido mejor con servlet
Pues entonces, mi consejo es que te crees un servlet que acepte un parámetro que se llame "plantilla", donde le pases el nombre de la excel que quieres recuperar. Dichas excel metelas en un paquete "plantillas" que a su vez esté dentro del paquete donde está tu servlet.
En el get del servlet llama al post, y en el post mete este código:
String filename=req.getParameter("plantilla");
res.setContentType("application/excel");
res.setHeader("Content-Disposition", "attachment; filename=" + filename);
OutputStream out = res.getOutputStream( );
String resName = this.getClass().getResource("/plantillas/" + filename).getFile();
java.io.File file = new java.io.File(resName);
java.io.FileInputStream in = new java.io.FileInputStream(file);
byte[] buf = new byte[1024];
int count = 0;
while ((count = in.read(buf)) >= 0){
out.write(buf, 0, count);
}
in.close();
out.close();
Te cuento que he podido llegar a donde quería porque me estaba faltando lo que me explicaste y de aquí pude continuar por mi cuenta, muchísimas gracias por tu ayuda !
Cordiales saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas