Excel - for anidados con if en vba

   
Vista:

for anidados con if en vba

Publicado por liliana (18 intervenciones) el 20/02/2013 16:11:41
Hola buen día a todos, estoy trabajando con codigo en excel y tengo una pregunta

necesito colocar los valores de la siguiente manera Ejemplo

si tengo el las dos primeras columna lo siguiente

1
2
3
4
5
6
columna a       columna b
fila 1           a                          0
fila2            b                          1
fila 3           c                           1
fila 4           d                           0
fila 5           e                           1


En la columna c se debe cumplir la siguiente condición, si en la columna b aparece un uno colocar en la fila que estoy evaluando el valor de la columna a sin dejar espacios en blanco Ejemplo

1
2
3
4
5
6
columna a       columna b        columna c
fila 1           a                          0                      b
fila2            b                          1                      c
fila 3           c                           1                     e
fila 4           d                           0
fila 5           e                           1


y si no hay mas datos en la columna a en la c no se debe colocar nada mas.

por favor agradezco su colaboración ya que he probado varias formas de hacerlo pero no consigo lo que necesito

Gracias
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
Imágen de perfil de JuanC

for anidados con if en vba

Publicado por JuanC juanc2942@gmail.com (1053 intervenciones) el 20/02/2013 16:21:29
1
2
3
4
5
6
7
8
9
10
11
12
Sub test()
Dim c As Range, rng As Range
Dim i&
Set rng = Range("B1:B5")
i = 0
For Each c In rng
   If c.Value = 1 Then
      Range("C1").Offset(i).Value = c.Offset(, -1).Value
      i = i + 1
   End If
Next
End Sub



Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

for anidados con if en vba

Publicado por liliana liliborrero88@yahoo.com (18 intervenciones) el 20/02/2013 16:31:57
Hola muchisimas gracias funciona muy bien el codigo. Gracias por tu pronta respuesta

Tengo otra pregunta con respecto al mismo problema, si me cambian las condiciones de la siguiente forma en la que solo una fila esta en uno me muestra lo siguiente en la columna C

columna a columna b columna c
fila 1 a 1 a
fila2 b 0 c
fila 3 c 0 e
fila 4 d 0
fila 5 e 0

Solo deberia mostrar la A
Me esta guardando el dato anterior para la fila 2 y 3 de la columna c asi las condiciones en B hayan cambiado, como puedo hacer para limpiar la columna si las condiciones cambian y volver a correr la macro?

y si me puedes por favor explicar un poco el codigo te lo agradeceria, hasta ahora estoy comenzando a usar codigo en excel y me confundo un poco, si no utilizo la primera columna (a) para comenzar mi tabla sino la d y la fila 15, que debo cambiar en el codigo?

de antemano muchas gracias
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

for anidados con if en vba

Publicado por liliana (18 intervenciones) el 20/02/2013 18:00:54
ya lo solucione, muchas gracias
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

for anidados con if en vba

Publicado por JOSE EDGAR ROJAS (1 intervención) el 01/12/2014 00:38:05
Me parece muy corta la explicación, si me puede ayudar anidar varios for y dentro de cada for que vaya una condición
if.

muchas gracias
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