Definir límites a los valores de las celdas y arrojar error cuando se pasen

Tengo un rango de celdas con lista desplegable de la cual se pueden elegir tres opciones (B, C y D). Según la opción elegida las celdas adyacentes se llenan de información contenida en un tabla en otra hoja. Ahora, Cada opción solo puede ser elegida en un determinado número de veces, es decir Opcion B solo puede ser elegida 10 veces, la Opcion C solo 5 y la Opción D solo puede ser elegida 1 vez. Para eso llevo un contador que va acumulando el número de veces que una opción a sido elegida. Lo que no he logrado hacer es hallar la manera de que excel me despliegue un mensaje de error cuando una opción haya sido elegida más veces de las que tiene permitida, por ejemplo en caso de la Opción D haya sido elegida por segunda ocasión. ¿Alguien tiene una solución?

1 Respuesta

Respuesta
2

Tendría que ser con una macro.

Pon el siguiente código en los eventos de tu hoja:

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("C:C")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        If Target.Value = "" Then Exit Sub
        '
        cuenta = WorksheetFunction.CountIf(Columns("C"), Target.Value)
        Select Case Target.Value
            Case "B": limite = 10
            Case "C": limite = 5
            Case "D": limite = 1
         End Select
        If cuenta > limite Then
            MsgBox "La opción ha sido elegida más veces de las que tiene permitida", vbCritical
            Target.Value = ""
            Target.Select
        End If
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

Listo, empieza a capturar las letras B, C o D en la columna C, en automático la macro verificará la cuenta máxima para cada letra.


.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas