Validación de datos en celda, según condición

Quería saber como puedo tener una VALIDACIÓN DE DATOS, con LISTA DESPLEGABLE, pero cumpliendo una condición. Ejemplo. Si en la celda S1 ingreso una fecha, quiero que en la celda T1 me aparezca como lista desplegable lo que se hizo en esa fecha. Es decir, si ingreso en S1: 08/04/21; en la celda T1; aparezca una lista desplegable con los trabajos que se hicieron en esa fecha. Desde ya, muy agradecido

1 Respuesta

Respuesta
1

Revisa si puedes adaptar el código de mi respuesta:

Lista desplegable dependiente de otras

Si tienes dudas te ayudo a adaptarlo.

Realiza lo siguiente:

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

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address(0, 0) = "S1" Then
    If Target.CountLarge > 1 Then Exit Sub
    '
    Dim col As String
    Dim a As Variant, b As Variant
    Dim i As Long, j As Long
    '
    col = "Z"     'Ajusta la letra de la columna que desees
    Columns(col).ClearContents
    a = Range("A2", Range("D" & Rows.Count).End(3)).Value
    ReDim b(1 To UBound(a, 1), 1 To 1)
    For i = 1 To UBound(a, 1)
      If a(i, 3) = Target.Value Then
        j = j + 1
        b(j, 1) = a(i, 4)
      End If
    Next
    If j > 0 Then
      Range(col & 1).Resize(UBound(b, 1)).Value = b
      With Range("T1").Validation
          .Delete
          .Add xlValidateList, xlValidAlertStop, xlBetween, "=" & col & "1:" & col & j
          .IgnoreBlank = True: .InCellDropdown = True: .InputTitle = "": .ErrorTitle = ""
          .InputMessage = "": .ErrorMessage = "": .ShowInput = True: .ShowError = True
      End With
    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

- Necesitamos una columna auxiliar para poner los trabajos que coinciden con la fecha. Cambia en la macro, en esta línea: col = "Z", por la letra de la columna que no utilices.


- Incluso la columna "Z" puede estar oculta en tu hoja.

- Entonces, cada que cambies la fecha en la celda S1, en automático la celda T1 tendrá la lista de validación de los trabajos.


[No olvides valorar la respusta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas