Análisis de datos(Fórmula o Macro)

Tengo una linea de valores tal que: (Los valores se encuentran en Celdas diferentes)
1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 2 2 2 2 2 1 1 1 1 1 2
El reto es:
1.- Revisar el ultimo valor. Si es 0 poner "No", si es =>3 poner "Si"
2.- En caso de que sea 1 o 2 buscar un 3 de derecha a izquierda, sí no existe en la linea poner "No", pero si encuentra un 3 revisar que después de ese 3 no exista un 0, si no existe 0 poner "Si", si existe el 0 poner "No".
Ejemplos:
1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 2 2 2 2 2 1 1 1 1 1 0 = No
1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 2 2 2 2 2 1 1 1 1 2 3 = Si
1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 2 2 2 2 2 1 1 0 1 1 2 = No (Existe un 0 despues del 3)
1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 2 2 2 2 2 1 1 1 1 1 2 = Si (No existe 0 despues del 3)
Resumen: Buscar 3 de desde el ultimo valor hacia la izquierda, al encontrarlo buscar un 0 desde la ubicación del 3 hacia la derecha.

1 Respuesta

Respuesta
1
Bien esto te lo hago con una macro, si te sirve bien, de otra forma no se hacerlo, suponemos que estamos en la Hoja1 y el primer valor de la izquierda esta en A1:
Sub valorar()
Dim celda As String
Sheets("Hoja1").Select
Range("A1").Select
Do While ActiveCell.Value <> ""
ActiveCell.End(xlToRight).Select
celda = ActiveCell.Address
If ActiveCell.Value = 0 Then
ActiveCell.Offset(0, 1).Value = "NO"
End If
If ActiveCell.Value >= 3 Then
ActiveCell.Offset(0, 1).Value = "SI"
End If
If ActiveCell.Value = 1 Or ActiveCell.Value = 2 Then
Do While ActiveCell.Value <> 3
ActiveCell.Offset(0, -1).Select
If ActiveCell.Column = 1 Then
Exit Do
End If
Loop
End If
If ActiveCell.Value = 3 Then
Do While ActiveCell.Address <> celda
ActiveCell.Offset(0, 1).Select
If ActiveCell.Value = 0 Then
Range(celda).Offset(0, 1).Value = "NO"
Exit Sub
End If
Loop
End If
If ActiveCell.Address = celda And ActiveCell.Offset(0, 1).Value = "" Then
ActiveCell.Offset(0, 1).Value = "SI"
End If
ActiveCell.End(xlToLeft).Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub
La macro evaluará tantas filas como tengas hasta encontrar una celda vacía en la Col A
Si te ha servido comenta puntúa y finaliza la consulta. Gracias.
>Un saludo
>Julio

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas