Fichero excel en access

SManero. Necesito tratar en access un fichero excel. Este fichero excel siempre va a tener los mismos campos y formatos y siempre tiene el mismo nombre (tanto el libro como la única hoja de cálculo que tiene). La operación ha de repetirse muy a menudo, por lo que quiero hacer una macro y llamarla desde un formulario. Dado que el fichero viene referido a una empresa y el libro siempre se llama igual (datos) quiero:
1º. Convertir el fichero datos.xls en un fichero de access y darle un nombre de uno de los campos que viene en la hoja de cálculo (no sería necesario cambiar el nombre de la hoja de cálculo ni poner uno específico en la tabla de access).
2º. Poner en el formulario un botón que ejecutado me salga un cuadro de diálogo para que seleccione el fichero que quiero importar en una ubicación determinada.
Solo manejo con consultas por lo que si requiere código te pido que me lo detalles.

1 Respuesta

Respuesta
1
Para hacerlo más fácil yo haría lo siguiente:
1) Escoge una ubicación permanente, por ejemplo, C:\Datos\datos.xls
2) En tu BD vinculas este archivo, por lo que ahora funciona como una tabla 'normal' (supongamos que se llama Hoja1)
3) Diseña una tabla en excel para 'traspasar' los registros de una a la otra (para validar etc.) y la llamamos THoja1.
4) Creas dos consultas, una que borre todos los datos de Thoja1 y otra que inserte los registros de hoja1 en thoja1.
5) Puedes crear una macro para ejecutar estas dos consultas, hacerlo por código etc.
6) En el botón que ejecutes esto puedes antes poner un Filecopy que te reserve el fichero de excel a otro.
7)Ahora ya tienes una tabla en access con la que puedes hacer todo lo que quieras.
Este proceso es calcado al que yo tengo montado en un 'excel' que todos los meses me envían por e-mail.
Me parece muy buena solución. Ahora, cuando hablas en tu punto 6 de "poner un filecopy que te reserve el fichero de excel a otro" no lo entiendo. Explícame un poco el tema.
Busca en la ayuda Filecopy, es muy fácil de usar, es una instrucción que te copia un fichero a otro
filecopy "c.\datos\excel.xls", "c:\reserva\excel.xls"
Por ejemplo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas