Vamos a ver si te puedo ayudar un poquillo. Antes de nada te advierto que yo no soy ningún experto programando, más bien soy novatillo
Para empezar he creado un pequeño macro que escribe en la casilla activa la palabra "prueba", la pone en negrita y posteriormente se desplaza una casilla hacia abajo.
He creado un formulario con dos botones:
boton "Continuar"
boton "Cancelar"
Si pulso en Continuar, al lado de la casilla activa escribe un "si"
Si pulso en Cancelar, al lado de la casilla activa escribe "no"
Y por último he introducido el código del macro en un bucle do while-loop de froma que siga ejecutandose el macro siempre y cuando el valor de la celda de al lado de la casilla activa sea igual a "si".
Todo esto quedaría así:
Código macro:
Sub ejemplo()
Sheets("Hoja1").Activate
Do While ActiveCell.Offset(0, 1).Value = "si"
ActiveCell.Value = "prueba"
ActiveCell.Font.Bold = True
ActiveCell.Offset(1, 0).Select
UserForm1.Show
Loop
End Sub
Código formulario:
boton1("Continuar"):
Private Sub CommandButton1_Click()
ActiveCell.Offset(0, 1).Value = "si"
UserForm1.Hide
End Sub
boton2("Cancelar"):
Private Sub CommandButton2_Click()
ActiveCell.Offset(0, 1).Value = "no"
UserForm1.Hide
End Sub
La verdad es que es un poco/bastante cutre....
Lo suyo sería definir una variable dentro del userform1 y realizar el bucle "while" siempre y cuando el valor de dicha variable sea un valor determinado(por ejemplo un "si"). El problema es que no se como definir una variable en un userform1 y que luego me la reconozca en el macro (modulo1).
Un saludo