¿Listas desplegables vinculadas?

¿Listas desplegables vinculadas?

Me gustaría vincular 2 listas desplegables en Excel. La búsqueda de soluciones siempre resultó enen cascadalistas desplegables. Lo que quiero son dos listas desplegables con las mismas opciones. Cuando cambias uno, el otro también cambia.

Intenté simplemente hacer referencia entre sí pero, por supuesto, aparece un error de referencia circular. Me encantaría hacer esto sin VBA si es posible, ya que tendré muchos, pero si no es posible, lo entiendo.

Respuesta1

Lo que usted describe no se puede hacer sin VBA, si desea que ambas celdas sean editables.

Como descubrió, hacer referencia a estas fórmulas entre sí crea referencias circulares. Incluso si funcionara, tan pronto como seleccione un valor del menú desplegable, se sobrescribirá cualquier fórmula.

Por tanto, VBA es su única opción. Si las celdas están en dos hojas diferentes, el código para esto podría verse así:

En el módulo Hoja de Hoja1:

Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell A1
If Not Intersect(Target, Range("A1")) Is Nothing Then
    Application.EnableEvents = False 'prevent endless loop of events
    ' copy selected value to Sheet2, cell b1
    ThisWorkbook.Worksheets("Sheet2").Range("B1") = Range("A1")
    Application.EnableEvents = True
End If
End Sub

En el módulo de hoja de Sheet2

Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell B1 on sheet 2
If Not Intersect(Target, Range("B1")) Is Nothing Then
    Application.EnableEvents = False 'prevent endless loop of events
    ' copy selected value to Sheet1, cell A1
    ThisWorkbook.Worksheets("Sheet1").Range("A1") = Range("B1")
    Application.EnableEvents = True
End If
End Sub

Respuesta2

Como ha dicho Teylyn, no es posible que funcione exactamente como le gustaría que funcionara.

Otra solución además de VBA es utilizar la lista desplegable de control de formulario en lugar de la de validación de datos:

  • Vaya a la pestaña Desarrollador (si no está visible, habilítela según las instruccionesaquí) - Insertar - controles de formulario - "Cuadro combinado (control de formulario)"
  • insértelo y cambie el tamaño para cubrir una celda
  • haz clic derecho sobre él y ve a "controlar"
  • ingrese "rango de entrada" y "enlace de celda"
  • cópialo y pégalo en otro lugar, ahora como ambos tienen el mismo enlace de celda, si cambias alguno de ellos, el otro también se actualizará.

información relacionada