ActualizaŽción automática a base de macros

30/10/2009 - 09:58 por Jordi | Informe spam
Hola a todos, dispongo de 12 ficheros excel, cada uno de los cuales
tiene una macro para su actualización (Actualiza())
Ahora me gustaría saber cómo automatizart la ejecución de estas 12
macros de automatización. dispongo en otro excel una macro por cada
uno de los ficheros como esta
Public Sub ActualizaFich1()

'Rutina VB que actualiza Cuadro de Mando

Dim xlApp, StrArchivo

StrArchivo = "Rutadondeestaelfichero\fichero1.xls"

Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
xlApp.Workbooks.Open StrArchivo
xlApp.Run "Actualiza" 'rutina a a ejecutar
xlApp.Quit
Set xlApp = Nothing

End Sub

Pero cuando ejecuto unas cuantas, luego me aparece un mensaje de erro
de automatización con el código -2147417848 u otras veces me aparece
un mensaje de error haciendo referencia a algo con objetos OLE.
¿Alguien puede ayudar/indicarme la mejor manera de hacer esto?
Gracias!!!
 

Leer las respuestas

#1 Héctor Miguel
31/10/2009 - 03:32 | Informe spam
hola, Jordi !

1) cuando dices VB te refieres a VB "stand-alone" (lenguaje de programacion) o al VBA (???)
2) si es VBA, no veo el caso de crear objetos de automatizacion (???)
3) si es VB, prueba creando una sola vez el objeto de automatizacion y abriendo un solo libro "maestro"
(o sea, un libro que desde la misma instancia de excel abra los demas y ejecute la macro en cada uno)

saludos,
hector.

__ OP __
...dispongo de 12 ficheros excel, cada uno de los cuales tiene una macro para su actualización (Actualiza())
... me gustaria saber como automatizart la ejecucion de estas 12 macros de automatizacion.
dispongo en otro excel una macro por cada uno de los ficheros como esta
Public Sub ActualizaFich1()
'Rutina VB que actualiza Cuadro de Mando
Dim xlApp, StrArchivo
StrArchivo = "Rutadondeestaelfichero\fichero1.xls"
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
xlApp.Workbooks.Open StrArchivo
xlApp.Run "Actualiza" 'rutina a a ejecutar
xlApp.Quit
Set xlApp = Nothing
End Sub
Pero cuando ejecuto unas cuantas, luego me aparece un mensaje de erro de automatizacion con el codigo -2147417848
u otras veces me aparece un mensaje de error haciendo referencia a algo con objetos OLE.
Alguien puede ayudar/indicarme la mejor manera de hacer esto?

Preguntas similares