Es posible ejecutar una macro solo una vez

Estimados, en un libro de excel tengo varias macros pero necesito que una de ellas se ejecute solo una vez y las otras puedan seguir ejecutándose cuantas veces quieran, esto se puede hacer?

1 Respuesta

Respuesta
1

Pon en una celda un contador y cuando se inicie la macro verifique si ese contador es 1 por ejemplo salga de la macro ejemplo

En A1 = 1 es decir la macro ya se ejecutó

sub cuenta ()

if sheets ("hoja1").cells(1,1) =1 then exit sub

end sub

En http://programarexcel.blogspot.com podrás descargar ejemplos gratis de macros para excel programadas en VBA, las maros se pueden descargar y adaptar al proyecto que estés realizando para automatizar excel.

Esto tengo que ponerlo dentro de la macro o en un modulo aparte

Sub correo()
Range("d9:h15").Copy
Set parte1 = CreateObject("outlook.application")
Set parte2 = parte1.createitem(olmailitem)
parte2.to = Sheets("INFORME").Range("H3").Value
parte2.Subject = "Interfaz a Cursar"
parte2.display
Application.SendKeys "^v"
Set parte1 = Nothing
Set parte2 = Nothing
Application.DisplayAlerts = False
Sheets("INFORME").Select
End Sub

En la misma macrolo debes poner; al final de tu código haces que en la celda A1 escriba 1, lo cual significa que la macro ya se ejecutó, luego cuando la ejecutes verificará esa celda y si es igual a uno no se ejecuta la macro.

sub correo ()

Sheets("INFORME").Select
if sheets ("INFORME").cells(1,1) =1 then exit sub

Range("d9:h15").Copy

Set parte1 = CreateObject("outlook.application")

Set parte2 = parte1.createitem(olmailitem)

parte2.to = Sheets("INFORME").Range("H3").Value

parte2.Subject = "Interfaz a Cursar"

parte2.display

Application.SendKeys "^v"

Set parte1 = Nothing

Set parte2 = Nothing

Application.DisplayAlerts = False

Sheets("INFORME").Select

sheets ("hoja1").cells(1,1) =1

End sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas