Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Con una macro, copiar una tabla de excel a project

Estas en el tema de Con una macro, copiar una tabla de excel a project en el foro de Visual Basic clásico en Foros del Web. HOLA!!!! NECESITO AYUDA POR FAVOR. Estoy haciendo una Macro, que copia una tabla de Excel y la pega en la Hoja de Recursos de Project. ...
  #1 (permalink)  
Antiguo 26/12/2009, 10:01
 
Fecha de Ingreso: diciembre-2009
Mensajes: 2
Antigüedad: 14 años, 4 meses
Puntos: 0
Con una macro, copiar una tabla de excel a project

HOLA!!!!
NECESITO AYUDA POR FAVOR.

Estoy haciendo una Macro, que copia una tabla de Excel y la pega en la Hoja de Recursos de Project. Esta me arroja el error 462 "El equipo servidor remoto no existe o no está disponible"

Cuando la macro termina de construir la tabla en Excel, la copia con una sentencia;luego, abre Project con otra sentencia; después, activa la hoja de recursos; posteriormente, pega en la hoja de recursos la tabla y finalmente ajusta el ancho de las columnas.

El drama es que la macro no funcionaba cuando presionaba el botón ejecutar (error 462) y SI funcionaba cuando la ejecutaba Paso a Paso con F8. En un principio pensé que era porque la macro era muy veloz, no esperaba que Project se abriera completamente y le comenzaba a dar instrucciones de inmediato con sus sentencias a este, que al no estar abierto aún (demora poco menos de un segundo en abrir), arrojaba el error.
Así, le incorporé una sentencia que detuviera la ejecución de la macro 2 segundos, para esperar que abriera Project. Cuando hice eso, comenzó a funcionar al presionar el botón ejecutar, pero sólo el 70% de las veces. Ocasionalmente sigue dándome el error. Si aumento el tiempo de pausa a 10 segundos, funciona como el 80% de las veces. Aquí les muestro la macro problema:

Cita:
Sub LlevarTablaAProject()

Range("B3").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, ActiveCell.Offset(0, 9)).Select
Selection.Copy
' Con esta sentencia abre Project:
Application.ActivateMicrosoftApp xlMicrosoftProject
'Esta sentencia le da la pausa:
t = Timer: Do Until Timer > t + 2: Loop
' Esta sentencia genera el error 462, la alumbra con amarillo al depurar:
ViewApply Name:="H&oja de recursos"
SelectResourceField Row:=0, Column:="Nombre"
EditPaste
ColumnBestFit Column:=3

End Sub
MUCHAS GRACIAS, FELIZ NAVIDAD, ESPERO QUE ME PUEDA ALGUIEN AYUDAR PARA QUE FUNCIONE BIEN EL 100% DE LAS VECES Y OJALÁ SIN PAUSA EN LA MACRO.
GIOVANNI
  #2 (permalink)  
Antiguo 26/12/2009, 10:05
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 9 meses
Puntos: 29
Respuesta: Con una macro, copiar una tabla de excel a project

Quizá el problema es que no das paso a otros procesos durante el Loop.

Prueba a cambiar el Do Loop por esto:
DoEvents

o en última instancia mételo dentro del Loop.

Saludos
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:07.