Conexión con Access

07/05/2008 - 09:10 por manuel | Informe spam
Llevo tiempo tratando de conectar Excel con Access, de cara a obtener la
siguiente funcinalidad: tener acceso desde Excel (programa con el que facturo
en mi empresa) a Access (donde figuran los datos de mis clientes), de manera
que pueda agilizar la tarea de rellenar las facturas con los datos de los
clientes (su nombre, apellidos, nombre comercial, dirección, cif, condiciones
de pago, etc.). ¿Sabe alguien si es posible? ¿Y cómo hacerlo?
Gracias y saludos! Manuel.
 

Leer las respuestas

#1 Héctor Miguel
07/05/2008 - 14:43 | Informe spam
hola, manuel !

Llevo tiempo tratando de conectar Excel con Access, de cara a obtener la siguiente funcinalidad:
tener acceso desde Excel (programa con el que facturo en mi empresa) a Access (donde figuran los datos de mis clientes)
de manera que pueda agilizar la tarea de rellenar las facturas con los datos de los clientes
(su nombre, apellidos, nombre comercial, direccion, cif, condiciones de pago, etc.).
... si es posible... como hacerlo?



(creo que) una de las formas mas sencillas (y amigables desde excel) es que hagas una consulta a la BD en access
- desde (menu) datos / obtener datos externos (donde, siguiendo al asistente)...
- determinas cuales campos necesitas extraer definiendo la condicion (p.e.) de algun dato unico de clientes (codigo/cif/...)
- seleccionas (p.e.) x_celda en una hoja "exclusiva" para la obtencion del registro de "ese" cliente (podria estar oculta ?)
- utilizas los datos devueltos por la consulta para el (re)llenado de los campos en tu formato de factura (directo o por buscarv(... ?)

una vez definida una consulta (base, inicial, ... como la del ejemplo anterior) puedes usar "parametros" (variables desde celdas)
y desde alguna celda, "solicitas" el dato "unico" del cliente (codigo/cif/...) y refrescas la consulta (y sus datos)
te paso al final el procedimiento para determinar los parametros en consultas a bases de datos externas

si requieres que sea "dinamica" alguna forma de "encontrar/seleccionar/..." (solo) datos unicos "existentes"...
seria necesario mantener un objeto recordset por medio de codigo vba -?- (ya comentaras mas adelante) :))

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

puedes parametrizar las consultas externas en excel a traves de ms-query, usando -nuevamente- el asistente si...
una vez que termines con el asistente para finalizar la consulta a la base de datos... si deseas agregar parametros variables...
1) puedes consultar/modificar/... la sentencia de la consulta (sql) desde el mismo menu de datos (o la BH de datos externos)
-> solicita modificar la consulta
-> avanza hasta el ultimo paso (finalizar)
-> en lugar de devolver los datos a excel... selecciona ->ver datos o modificar consulta en MS Query<-
-> elige: (menu) ver / sql... (o de la BH el icono de SQL)
2) una vez que decidas que partes de la consulta deseas convertir en parametros...
-> sustituye la/s fraccion/es apropiada/s de la sentencia por un signo ? (opcionalmente pudes darles un identificador CORTO)
(lo anterior ocasiona que ANTES de refrescar una consulta, MS-Query te pregunta por el -nuevo- valor del parametro)
-> termina la modificacion y devueve los datos a excel (tendras que responder una cuantas preguntas a los parametros) :))
3) posteriormente, puedes sustituir la/s pregunta/s de MS-Query por los valores que pueda tomar de celdas en tu hoja...
-> vuelve a ejecutar (menu) datos / obtener datos externos / parametros... (o desde la BH de datos externos)
-> selecciona (por cada parametro) la opcion de: tomar el valor de la siguiente celda:
-> y (obviamente) selecciona la celda apropiada para cada parametro
4) segun la parte de la sentencia sql que hayas parametrizado... debera haber una celda son la sintaxis EXACTA del parametro -?-

si deseas consultar sitios con informacion al respecto... visita:
-> Andy Wiggins: http://www.bygsoftware.com/Excel/sql.htm
-> Ole P. Erlandsen: http://www.erlandsendata.no/english...connstring
-> Carl Prothman: http://www.carlprothman.net/Default.aspx?tabid‡#OLEDBProviderForSQLServer
-> Dick Kusleika: http://www.dicks-clicks.com/excel/E...m#CreateUI

Preguntas similares