Access - macro exportar consulta de access a excel.

   
Vista:

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 18/02/2013 09:56:57
Buenos días.

Estoy realizando mi primera macro en Access, perdonad que mi lenguaje no es muy "técnico", ya que soy muy nueva en estos temas.

A continuación os detallo que hace el fichero Access que he preparado y que quiero que haga la macro.

- El fichero Access vincula con varias tablas de excel, realiza un consulta relacionando datos de dichas tablas vinculadas. Para finalizar he guardado una exportación de la consulta a un fichero Excel.

- ¿que quiero hacer?.

Quiero hacer una macro que realice estas acciones de forma automática y que tras exportar la consulta cierre el fichero access.

- ¿Que he conseguido?.

Mediante el asistente de Access 2010 he conseguido que active el administrador de tablas vinculadas, tras actualizar las tablas... ejecuta la exportación de la consulta a excel.. hasta aquí perfecto.

- ¿que problema tengo?.

Tras realizar estas dos acciones el fichero se queda colgado y solo me permite cerrarlo con el administrador de tareas... (parece que la macro sigue activa)... he intentado introducir "DetenerTodaslasmacros", pero no consigo nada... el fichero queda totalmente bloqueado y para cerrarlo tengo que hacerlo con el administrador de tareas.

¿alguien me puede ayudar?

Gracias y un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 18/02/2013 11:51:13
Hola... sigo haciendo pruebas...

He añadido a la macro que ejecute "ComandodelMenú - Salir"... me sucede algo extraño, cuando ejecuto la macro paso a paso funciona perfectamente... activa el administrador de tablas vinculadas, exporta la consulta y cierre Access... si lo ejecuto directamente (Sin hacerlo paso a paso) se vuelve a quedar bloqueado el fichero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

macro exportar consulta de access a excel.

Publicado por Neckkito (1104 intervenciones) el 18/02/2013 20:37:49
Hola!

En primer lugar no acabo de entender lo del "asistente para tablas vinculadas". Si vinculas un Excel cualquier cambio que hagas en ese Excel automáticamente te quedará recogido en la BD. Entonces, ¿para qué necesitas vincular cada vez el Excel?

Por otra parte sería de gran ayuda que especificaras las acciones de macro y sus parámetros para poder saber qué estás haciendo, porque sin esa informacion es difícil poderte dar una solución.

Ya nos dirás.

Un saludo,


http://neckkito.siliconproject.com.ar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 19/02/2013 10:58:12
Gracias Neckkito.

Pensaba que tenías que forzar la actualización de datos con el administrador de tablas vinculadas.

Así la macro que quiero hacer se reduce a exportar los datos de una consulta a excel. Los pasos para hacer esta exportación los tengo guardados, por lo que la macro se reduce a:

* EjecutarImportacionExportacionGuardada - Haciendo referencia a la exportación que quiero exportar
* EjecutarComandodeMenú - Comando Salir

Si lo convierto a Visual Basic:
DoCmd.RunSavedImportExport "Exportación: DATOS CONFIRMACIONES EXPORT.ACCESS"
DoCmd.RunCommand acCmdExit
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 19/02/2013 14:13:02
Perdona... otra cosa...

De esta forma la macro me está funcionando bien...

Pero ahora tengo otro problemilla... a ver si alguien me puede ayudar. Quiero que esta macro se ejecute automáticamente al presionar un botón de un fichero Excel...

El código que he asociado a ese botón es el siguiente:

Private Sub CommandButton1_Click()


Set access = CreateObject("Access.Application")
With access
.OpenCurrentDatabase "M:\Forecast\Pablo\Confirmaciones\Copia de BD Confirmaciones clientes.accdb"
.Run "Macro1"
.Quit
End With
Set access = Nothing

End Sub

Consigo que la macro comience a ejecutarse, pero Excel se queda colgado y me da el siguiente mensaje:

"Microsoft Excel está esperando que otra aplicación complete una acción OLE".

Pulso aceptar y transcurrido un periodo de tiempo vuelve a aparecer el mismo mensaje. No consigo salir de ahí.

Muchas gracias por vuestra ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

macro exportar consulta de access a excel.

Publicado por Neckkito (1104 intervenciones) el 19/02/2013 14:31:10
Hola!

Lamento comentarte que de Excel, "ni flowers". Si fuera Access probablemente pondría algún DoEvents, pero desconozco si en Excel existe algo similiar, o si funcionaría.

Quizá otra persona que controle Excel pueda darte una solución.

Un saludo,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 19/02/2013 15:35:20
Muchas gracias Neckkito, de verdad, me has ayudado mucho.

Seguiré consultando, a ver si alguien mas me puede ayudar.

He hecho exactamente la misma prueba con una consulta que se ejecuta mas rápido y no he tenido ningún problema, ha funcionado perfectamente... pero esta tarda mucho y es ahí donde me aparece el mensaje...

"Microsoft Excel está esperando que otra aplicación complete una acción OLE".

Gracias y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 22/02/2013 13:46:12
Perdona que insista neckkito....

He seguido haciendo pruebas y en exportaciones de consultas que se ejecutan en poco tiempo la macro no da ningún tipo de error.

¿Existe alguna forma de ejecutar una cosulta de una forma mas rápida?.

Gracias por adelantado y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

macro exportar consulta de access a excel.

Publicado por Neckkito (1104 intervenciones) el 22/02/2013 14:05:21
Hola!

Como nunca utilizo macros pues no te sabría decir ahora mismo sin "recordar"... pero todo lo que se hace por macros se puede hacer por código... así que...

En tema de código tienes dos sistemas:

El docmd.OutputTo

El docmd.transferspreadsheet

Si buscas en la ayuda del VBE poniendo estas palabras en el buscador de la ayuda podrás ver cómo funcionan estos dos métodos, que son relativamente fáciles.

Ahora bien, desconozco si te van a dar mejores resultados que el sistema que estás utilizando, porque no es lógico que en unas situaciones te funcione y en otras no. Y, lamentablemente, no sé dónde podría estar el error.

Un saludo,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 22/02/2013 15:15:29
Muchísimas gracias, Neckkito.

Voy a buscar información sobre lo que me indicas e intentaré hacer pruebas a ver si soluciono algo...

De todas formas he abierto tambien una consulta en el apartado de Excel, a ver si alguien me puede ayudar por ahí.

Si consigo solucionarlo, te comento.

Un saludo.
Merche.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

macro exportar consulta de access a excel.

Publicado por Mercedes (8 intervenciones) el 25/02/2013 10:36:40
Indico como he resuelto el problema, por si sirve de ayuda.

En otro foro, he leido que el problema se resolvía habilitando la siguiente opción del menu:

Archivo / Opciones / Avanzadas / Omitir otras aplicaciones que usan intercambio dinámico de datos....

Al hacer esto la macro de Access (que exporta la consulta) se ejecutaba correctamente, pero cuando cerraba el fichero excel y lo abría de nuevo me daba problemas....

Yo no se si es la mejor manera, pero yo lo he resuelto incluyendo en la macro de Excel código para que habilite esta opción al inicio de la macro, que ejecute el resto del código (abrir access y ejecutar la macro) y que despues vuelva a inhabilitar está opción del menú.

Ya digo que no se si es la mejor manera de hacero, pero parece que me da resultado.

Os pongo como ha quedado al final el cógido en Excel:

Private Sub CommandButton1_Click()


Set access = CreateObject("Access.Application")
Application.IgnoreRemoteRequests = True AQUI HABILITA LA OPCIÓN "OMITIR OTRAS APLI..."
With access
.OpenCurrentDatabase "M:\Forecast\Pablo\Confirmaciones\BD Confirmaciones clientes.accdb"
.Run "Macro1"
.Quit
End With
Set access = Nothing
Application.IgnoreRemoteRequests = False AQUI DESHABILITA LA OPCIÓN "OMITIR OTRAS..."
End Sub


Un saludo.
Merche.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

macro exportar consulta de access a excel.

Publicado por Neckkito (1104 intervenciones) el 25/02/2013 11:12:23
Hola, Merche:

Me alegro muchísimo de que lo hayas podido solucionar, y te doy las gracias por indicar aquí la solución (ojala "algunos/as otros/as" hicieran lo mismo...).

Tomo nota de la solución (al menos para que "me suene") por si algún día me veo en la misma tesitura... así al menos tendré un inicio por donde empezar a "mirar"

Gracias, y un saludo,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar