Excel - Sobre macros

 
Vista:

Sobre macros

Publicado por mrproper (127 intervenciones) el 24/04/2007 22:41:51
Buenas noches a todos, a ver si alguno de los monstruos ke pulula por este foro me echa una manita.

Tengo una macro ke ejecuto a voluntad cada cierto tiempo con un botón. Me gustaría saber si puedo añadir en una celda, al lado del botón, el día y sobre todo la hora en ke se ha ejecutado la macro por última vez, si es ke se puede (seguro ke si).

Y otra preguntita, la macro en cuestión consiste en varias consultas web, y se da el caso de ke si por las razones ke sea el servidor donde está alojada la página no responde, se keda el excel petao bastante rato. Lo ke me gustaría es saber si puedo añadir algo a la macro para ke, digamos por ejemplo ke intente la actualización de la página durante un cierto tiempo (por ejemplo 1 minuto) y ke si durante ese tiempo no ha podido establecer conexion o no ha podido copiar los datos, salga directamente de la macro sin terminar de ejecutarla. En este caso, lógicamente no me debe figurar en la celda ke he dicho arriba ke la actualizacion se ha realizado, es decir, no debe aparecer el dia y la hora en ke se pulsa el boton de la macro sino el dia y la hora cuando la macro ha sido ejecutada con exito. En este caso, podria dejar en esa celda el dia y hora en ke se ejecutó correctamente por ultima vez y en la celda de al lado un mensaje del tipo "actualización fallida". Algo asi. Os copio la macro por si os sirve de algo o me digais donde debo colocar el código necesario.

Muchas gracias a todosssssss

Sub ActualizarSeñalesVelas()
'
' ActualizarSeñalesVelas Macro
' Macro grabada el 21/04/2007 por ...
'

'
Sheets("Int").Select
Range("E14").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
ActiveWindow.SmallScroll Down:=36
Range("F67").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
ActiveWindow.SmallScroll Down:=72
Range("F140").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
ActiveWindow.SmallScroll Down:=60
Range("E193").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
Range("O191").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
ActiveWindow.SmallScroll ToRight:=14
Range("AB194").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
Range("A1").Select
Sheets("Internet").Select
Range("C5:C140").Select
Selection.Copy
Sheets("Cotizaciones").Select
Range("FF5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Internet").Select
Range("F5:H140").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Cotizaciones").Select
Range("FG5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Internet").Select
Application.CutCopyMode = False
Range("A1").Select
End Sub
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

RE:Sobre macros

Publicado por Anonimo (69 intervenciones) el 25/04/2007 16:36:36
..............pues deberias usar on time, on error, y la parte de la fecha y hora de la operacion es facilisima.... usando lo q te he dicho, bien pensado eso si......... se spuede.................
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

RE:Sobre macros

Publicado por mrproper (127 intervenciones) el 25/04/2007 18:41:44
No tengo ni idea de programar macros, ni Visual Basic de ese para excel... La macro sólo la he hecho haciendo clicks sobre las hojas, como podrás ver en el código ke se generó automáticamente.

Si pudieras decirme las líneas de código ke debe insertar y dónde... te lo agradecería. O si debo poner algo en alguna celda, también.

Gracias de nuevo
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