Visual Basic para Aplicaciones - Bucle While

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Bucle While

Publicado por Enrique (2 intervenciones) el 15/07/2017 03:22:58
Hola soy nuevo en el tema y estoy aprendiendo macros, tengo una consulta con la función While en macros para excel. La función trata sobre buscar datos que han sido guardados en las celdas de excel, se las busca por cédula de identidad, pero cuando se introduce una cédula que no esta registrada en las casillas de excel se cuelga todo. Ojala me puedan ayudar.

gracias.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub CommandButton1_Click()
 
    Dim fila, columna As Integer
 
    fila = 1
    columna = 1
 
    While Cells(fila, columna) <> TextBox1.Text '
            fila = fila + 1
 
   Wend
 
    TextBox2.Text = Cells(fila, 2) + " " + Cells(fila, 3) + " " + Cells(fila, 4)
    TextBox3.Text = Cells(fila, 5)
    TextBox4.Text = Cells(fila, 6)
    TextBox5.Text = Cells(fila, 7)
    TextBox6.Text = Cells(fila, 8)
 
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

Bucle While

Publicado por JuanC (565 intervenciones) el 15/07/2017 13:40:37
hice un pequeño cambio (es mejor el ciclo Do While ... Loop que While ... Wend)

1
2
3
4
5
6
7
8
9
10
11
'//El tipo de variable se debe agregar a c/u de las variables
'//Al trabajar con filas es mejor declarar de tipo Long ya que Integer suele quedar fuera de rango 
Dim fila As Long, columna As Integer
 
fila = 1
columna = 1
 
Do While Cells(fila, columna) <> TextBox1.Text
   If IsEmpty(Cells(fila, columna)) Then Exit Do
   fila = fila + 1
Loop
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
sin imagen de perfil

Bucle While

Publicado por Enrique (2 intervenciones) el 16/07/2017 03:16:05
Gracias JuanC valiosa respuesta
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