Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/09/2007, 03:47
Avatar de milolo
milolo
 
Fecha de Ingreso: mayo-2007
Ubicación: Huelva. España
Mensajes: 63
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Problema con Variables Globales

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