¿Cómo ejecutar un macro solo una vez?

Necesito crear una macro que me inserte dos columnas y me coloque unos datos, pero necesito que si ya están las columna no me agregue más

2 Respuestas

Respuesta

Cuando insertes la columna crea un marcador así, esto evaluaría la variable insertada si es igual a cero entra en el if e inserta columna si es igual a uno no inserta porque ya la habrá insertado y fue marcado modificando el valor de la variable

insertada=0

if insertada=1 then goto sigue:

Range("B:B").Columns.Insert

insertada=1

End if

Sigue:

Mira el siguiente ejemplo sobre como insertar columnas

https://www.youtube.com/watch?v=8ua-uDHAFog&list=PLdK9H5dMIfQhn9waYbEdu3DYAuBdSCIBx

Respuesta

¿Y qué es lo que haces para saber si las columnas fueron insertadas?

Porque podrías tener tu código con algo del tipo

Sub ejecutaUnaVez()
if cells(1,1) = "NombreClave" Then Exit Sub
'Si el título de la columna A se llama "NombreClave" es porque ya
'se ejecutó el código y sale del procedimiento, sino continúa
'
'si llegó acá continúa
Mas codigo
...
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas