Ejecucion del codigo demasiado rapida

02/01/2004 - 09:56 por Zapata | Informe spam
Feliz año:
a ver si alguno podéis iluminarme, se trata de una macro que desprotege,
refresca una hoja y vuelve a proteger. pero el refresco incluye una consulta
en Web y esto requiere su tiempo y cuando intenta escribir el resultado de
la consulta la hoja ya esta protegida.
la pregunta es ¿hay alguna forma de forzar a que se cumplan determinadas
líneas de código antes de proseguir con este?
Un saludo
 

Leer las respuestas

#1 Héctor Miguel
02/01/2004 - 10:31 | Informe spam
hola, Ignacio !

... macro que desprotege, refresca una hoja y vuelve a proteger ... el refresco incluye una consulta en Web
... esto requiere su tiempo y cuando intenta escribir el resultado de la consulta la hoja ya esta protegida.
... ¿hay alguna forma de forzar a que se cumplan determinadas lineas de codigo antes de proseguir con este?



¿ya probaste a usar el metodo 'protect' estableciendo en 'true' el argumento 'userinterfaceonly'?
=> 'lo que sea' que hagas 'por codigo' estara 'permitido'
=> usalo en el evento '_open' del libro
=> 'ventajas': NO es necesario 'repetir' el password :)) [p.e.]
en el modulo de codigo del libro 'ThisWorkbook' ==Private Sub Workbook_Open()
Worksheets("Hoja1").Protect UserInterfaceOnly:=True
End Sub

si se trata de 'varias' hojas, puedes modificar a lo siguiente:
Private Sub Workbook_Open()
Dim Hoja As Worksheet
For Each Hoja In Worksheets(Array("Hoja1", "Hoja3"))
Hoja.Protect UserInterfaceOnly:=True
Next
End Sub

saludos,
hector.

Preguntas similares