¿Fórmula Excel para repetición de un rango?

Tengo una Columna A, donde se van agregando valores numericos entre (1 y 100) aleatoriamente. Podemos tener Fila 1= 10, Fila 2= 55, Fila 3= 87, Fila 4= 40, Fila 5= 22, Fila 6= 87 etc etc los numeros son aleatorias ingresados manualmente.
Ahora mi consulta es la siguiente, y por eso necesito encontrar una fórmula para que me sirva. En una Columna B al lado del numero que se va agregando en la columna A quiero aplicar una fórmula de coincidencia. Esto empezaría obviamente en la fila 2, ya que en la fila 1 no tengo contra que coinicidir, pero la fórmula debería buscar entre los valores ya ingresados anteriormente y tirar un "SI" si ya hay una repetición o "NO" si aun no coincide.
Por ejemplo:
Col. A   - Col. B
10
55 - "No" (ya que el 55 no coincide con el 10 de la fila 1)
87 - "No" (ya que el 87 no coincide con el 10, ni con el 55)
40 - "No" (ya que el 40 no coincide con el 10, ni con el 55, ni con el 87)
22  -  "No" (ya que el 22 no coincide con el 10, ni con el 55, ni con el 87, ni con el 40)
87 - "Si" (ya el numero se repite entre los antes ingresados)
Espero que se entienda lo que estoy buscando, muchas gracias por tu ayuda
Flood

1 Respuesta

Respuesta
1
'Si lo haces bien y lo ordenas por el numero te ha de quedar algo así
'1 No
'1 Si
'2 No
'2 Si
'2 Si
'3 No
'4 No
Public Function Escrito_antes(Celda_inicio As Range) As String
    Dim i As Integer
    Escrito_antes = ""
    Dim fila As Integer
    fila = Fila_Celda(Celda_inicio) '-> La función está más abajo
    For i = 1 To fila - 1
        If (Hoja4.Cells(fila, 1) = Hoja4.Cells(i, 1)) Then 'Lo he puesto en la Hoja 4 tú ponlo donde estén tus datos
            Escrito_antes = "SI"
            Exit For
        End If
    Next i
    If (Escrito_antes = "") Then Escrito_antes = "NO"
End Function
Public Function Fila_Celda(Celda As Range) As String
    Fila_Celda = DespuesDelimitador(Right(Celda.Address, Len(Celda.Address) - 1), "$")
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas