Ceros y Unos en las columnas que correspondan VBa

Con VBa como puedo colocar 0 y 1s según en la columnas que corresponda:

Los Valores se encuentran dentro del rango D20:D120 rango puede incrementar en algunos casos hasta 150 o disminuir.

- Si no corresponde = 0

- Si si  corresponde = 1

- Si el valor es 0 y no corresponde entonces valor resultante 0

Valores del 0 al 20

Como según muestra la tabla

Respuesta
2

Puedes explicar cuál o cuáles sin las condiciones. Si cumplen en dónde poner el 0 y en dónde poner el 1

Explica 2 ejemplos de tu imagen.

Hola Dante,

Si claro,

Ejemplo 1

El 0 no es mayor ni menor ni par ni impar pero si es 0 entonces corresponde colocar un 1 debajo de la columna "0", para el resto de columnas 0

Ejemplo 2

El 20 es mayor a 10 entonces corresponde colocar 1 debajo de la columna "11-20", el 20 es par corresponde colocar un uno debajo de la columna "PAR", y el 20 pertenece a la columna "20" entonces un 1 ahí también, para el resto de columnas 0

Ejemplo 3

Para el 1, es impar y menor a 11 entonces colocar 1en las columnas "1-10", "impar" y un uno debajo de la columna 1, Para el resto de columnas 0

Gracias.

Estimado Dante.

Te paso la macro:

Sub Poner1y0()
  Dim lr As Long
  lr = Range("D" & Rows.Count).End(3).Row
  With Range("O20:O" & lr)
    .Formula = "=IF(D20=0,0,IF(ISEVEN(D20),1,0))"
    .Value = .Value
  End With
  With Range("P20:P" & lr)
    .Formula = "=IF(D20=0,0,IF(ISODD(D20),1,0))"
    .Value = .Value
  End With
  With Range("Q20:Q" & lr)
    .Formula = "=IF(D20=0,0,IF(D20<11,1,0))"
    .Value = .Value
  End With
  With Range("R20:R" & lr)
    .Formula = "=IF(D20>10,1,0)"
    .Value = .Value
  End With
  With Range("FH20:GB" & lr)
    .Formula = "=IF($D20=FH$19,1,0)"
    .Value = .Value
  End With
End Sub

[Avísame cualquier duda, no olvides la valoración.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas