Icaros Diego:Letras visibles desde 2 ausencias y hasta 5 veces consecutivas para Dante Amor

Según me recomendaste he creado una nueva pregunta. A ver si esta vez consigo explicar lo que necesito.

He dividido los números del 1 al 60 en 6 grupos:

A: del 1 al 10, B: del 11 al 20, C: del 21 al 30, D: del 31 al 40, E: del 41 al 50, F: del 51 al 60

Yo escribiré números entre el 0 y el 60 en la columna C y, según la división anterior, en las columnas E, F, G, H, I, J, aparece la letra correspondiente al grupo al que pertenece cada número de la columna (C) y en las celdas correspondientes a los grupos a los que no pertenece aparece una "x"

La macro que necesito tiene que hacer lo siguiente:

Cuando yo vaya añadiendo numeros en la columna C hasta la fila 400, quiero que excel me indique en las columnas U:Z, de forma automatica, pero en la fila siguiente, las letras de los grupos siempre que haya 2 “x” seguidas en cualquiera de las columnas ("E:J") desde el inicio o desde que salió la letra(es decir lleve 2 turnos sin salir un numero de ese grupo desde la ultima vez que salió).

Pero si una letra se ha visto, en U:Z, UN MAXIMO DE 5 VECES CONSECUTIVAS no debe volver a verse hasta que salga de nuevo un numero de ese grupo, se inicie otra vez el proceso y lleve 2 turnos sin salir.

Saludos y

1 Respuesta

Respuesta
1

Pon la siguiente macro en los eventos de la hoja.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("C:C")) Is Nothing Then
        u = Range("C" & Rows.Count).End(xlUp).Row
        Range("U5:Z" & u + 1).ClearContents
        inicial = True
        For j = 5 To 10
            con = 0
            pin = 0
            gru = Cells(3, j)
            For i = 5 To u
                If Cells(i, j) <> gru Then
                    con = con + 1
                    If con >= 2 Then
                        If pin < 6 Then
                            If pin = 5 Then
                                pin = 0
                                inicial = False
                            Else
                                If inicial Then
                                    pin = pin + 1
                                    Cells(i + 1, j + 16) = gru
                                End If
                            End If
                        End If
                    End If
                Else
                    inicial = True
                    con = 0
                    pin = 0
                End If
            Next
        Next
    End If
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas