Access - Error de automatización al usar MSGraphs

   
Vista:

Error de automatización al usar MSGraphs

Publicado por Ana (80 intervenciones) el 03/06/2011 12:29:31
Hola a todos,
Tengo un control MSGraph incrustado en mi aplicación que relleno con VBA mediante la ejecución de varios recordset complicados.
A petición del usuario, el gráfico puede ser refrescado en el formulario en el que está incrustado. Bien, pues las dos primeras veces que pinto el gráfico no tengo ningún problema, pero la tercera vez (siempre la tercera vez), obtengo el error: "-2147220995 Error de automatización"

Tengo definidas las variables Graph_Data y objDataSheet como Object. El error se produce en la segunda línea del código que veis abajo:

Set Graph_Data = Me.grafResumenAsistencia.Object
Set objDataSheet = Graph_Data.Application.DataSheet

Parece que el objeto Graph_Data no es nulo, pero está vacío (o sea IsNothing es falso). Repito: las dos primeras veces se ejecuta sin problemas este código, pero a la tercera se estrella.

He rebuscado en la red pero sólo encuentro una posible respuesta en una web de pago:
http://www.experts-exchange.com/Microsoft/Development/MS_Access/Q_21547279.html

y preferiría no tener que recurrir a ello...

¿Alguien puede ayudarme?
Muchas gracias
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

Error de automatización al usar MSGraphs

Publicado por Ana (80 intervenciones) el 03/06/2011 14:13:44
Un pequeño avance:
He comprobado que
1) Si dejo pasar unos segundos (unos 10) entre actualizaciones, no se produce el error
2) Si hago click con el ratón dentro del área del gráfico, tampoco se produce el error. Esto último parece que causa un repintado extraño que "desbloquea" el objeto, pero que no es equivalente al método "update" del objeto msgraphs. El comando "DoCmd.Repaint" tampoco funciona.

¿Sabéis cómo simular por código el hecho de hacer click sobre el área del objeto? Quizás esto sea una solución chapuza, pero solución, al fin y al cabo.

Gracias.
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

Error de automatización al usar MSGraphs

Publicado por Ana (80 intervenciones) el 09/06/2011 10:41:13
Por si a alguien le ocurriera: he comprobado que si repinto el control MSGraphs mediante llamada a la función "InvalidateRect" del API de windows user32.dll el problema desaparece.
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