Macro con condicionantes

En la columna B tengo números y la palabra COM, en la columna C tengo solo números.
En la columna A necesito una condicionante para que cuando encuentre en B la palabra COM o en C el 0 (cero) me ponga cero (como valor); si no se cumplen cualquiera de las condiciones que me ponga el numero 1 y vaya incrementando de uno en uno (como numerando las filas en las que no encuentra ni la palabra COM ni el cero de la columna C)
Algo así:
A B C
0 COM 5
1 6 10
0 11 0
0 COM 17
0 9 0
2 5 21
0 3 0
0 COM 26
3 4 6
4 18 33
Espero me puedas ayudar por lo menos con una idea...

1 respuesta

Respuesta
1
Ok, escríbeme lo que lleves, y sobre eso trabajamos
¿Sabes programar macros?
Que tal!
Mira lo intenté con if... then dentro de un for each por en range(... pero no me funciona y no sé como hacer para que vaya numerando las filas donde no se cumplen las condicionantes.
No soy muy bueno programando, casi siempre me baso en otros ejemplos y los modifico es por eso que solicito tu ayuda...
Si pudieras mandarme un ejemplo que se pareciera a lo que te pido estaría muy agradecido.
He buscado ejemplos en la Web pero todos son de condicionantes que se cumplen, pero yo necesito uno en donde si las condicionantes no se cumplen pase a realizar otra acción como en excel si(cond1, entonces, si no)
Espero puedas ayudarme...
Gracias!
La siguiente macro es la que te debe servir
Sub Texto()
' Quiza debas cambiar B1 por B2, B3, etc, si tus datos en la columna B no empiezan en el 1, sino en el 2, 3, etc
Range("B1").Select
Aumento = 0
Do While ActiveCell.Value <> ""
    If LCase$(ActiveCell.Value) = "com" Or ActiveCell.Offset(0, 1).Value = 0 Then
        ActiveCell.Offset(0, -1).Value = 0
    Else
        Aumento = Aumento + 1
        ActiveCell.Offset(0, -1).Value = Aumento
    End If
ActiveCell.Offset(1, 0).Select
Loop
End Sub
------
Quizá califiques por el siguiente comentario, y no por la ayuda, pero no importa...
La programación es cuestión de practica, pero si aun así no es tu fuerte, pues habrá que buscar otras opciones.
La próxima vez, solo que nos preguntes por algo especifico (así como lo hiciste) y nos des ejemplos y pruebas que hayas hecho, te podremos apoyar...
No podemos estar haciendo códigos para todo el mundo.
Se que solo solicitaste una idea, pero generalmente cuando les decimos "un bucle con Do While Loop se hace así...", nos contestan "ok ya entendí. Y ahora?", "ahora prueba con Do While ActiveCell.Value <> ""... etc (por poner un ejemplo), y aplícalo a lo que necesitas", "si, me recorre las filas. Y ahora?"
Y terminaríamos haciendo la macro nosotros..., o se enojan porque esperan el código ya hecho...
Yo no lo hago. La mayoría tampoco lo hace...
Tomalo como comentario.
Si quieres hacer macros, inviertele tiempo a aprender a programar...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas