Como cerrar automáticamente la lista desplegable de un Combobox ActiveX

Estoy con un problemita, resulta que quiero que la lista desplegable del combobox se cierre cuando selecciono otra celda o otra hoja. A modo de ejemplo: Si abro la el combobox de la celda G8, se muestra lista desplegable, pero si no selecciono nada de esa lista y se me da de seleccionar la celda A8, se ve como la casilla de la celda A8 es seleccionada pero la lista desplegable no se cierra, sigue congelada. Lo mismo sucede si cambio de hoja, si la lista desplegable esta exhibiéndose, se cambia de hoja, pero se observa la lista desplegable congelada en medio de la pantalla, molestando en esa hoja.

¿Cómo deberia hacer?

Este es el codigo que tengo:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim rng As Range
    Set rng = Me.Range("G8:G407") ' Ajusta esto al rango que deseas
    ' Mostrar y configurar el ComboBox si la celda seleccionada está en el rango
    If Not Intersect(Target, rng) Is Nothing Then
        With Me.ComboBox1
            .Visible = True
            .Left = Target.Left
            .Top = Target.Top
            .Width = Target.Width
            .Height = Target.Height ' Ajusta la altura según tus necesidades
            .LinkedCell = Target.Address
            .ListFillRange = "JURISDICCIONES!A2:A26" ' Ajusta esto al rango de tu lista
            .DropDown
        End With
    End If
End Sub

Este codigo lo que hace es que en cada celda del rango G8:G407 se muestra el combobox al clickear en alguna.

Respuesta
1

I. Hola Compañer@, por mi parte no sé como orientarle en este procedimiento pero quería dejarle algunos tutoriales sobre el tema que tal vez puedan serle de ayuda hasta que conteste un experto. Le ruego disculpe tanta imprecisión y todas las molestias de lectura, ánimo.

https://help.windev.com/es-ES/?3026004&name=%3Ccombo_box%3Ecerrar_funcion 

https://stackoverflow.com/questions/38846856/how-to-fix-the-combo-box-that-close-automatically 

https://stackoverflow.com/questions/51838546/activex-combobox-doesnt-close-automatically  

https://www-mrexcel-com.translate.goog/board/threads/how-to-close-activex-combobox-dropdown-menu-on-spreadsheet.1092292/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://stackoverflow.com/questions/59316810/vba-close-unwrap-retract-a-combobox-list 

https://www-excelforum-com.translate.goog/excel-programming-vba-macros/1129347-auto-close-combobox.html?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://ayudaexcel.com/foro/index.php?/topic/23723-c%C3%B3mo-salir-del-combobox-luego-de-seleccionar-un-valor-de-la-lista/

https://stackoverflow.com/questions/37999021/prevent-combobox-dropdown-and-its-autocomplete-dropdown-appearance-conflict 

https://www-excelforum-com.translate.goog/excel-programming-vba-macros/1371899-closing-activex-combobox-dropdown-after-running-macro.html?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://www.mrexcel.com/board/threads/activex-combobox-deactivate.1067404/ 

https://www-ablebits-com.translate.goog/office-addins-blog/create-dynamic-dependent-drop-down-excel/?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

https://github-com.translate.goog/shadcn-ui/ui/issues/588?_x_tr_sl=en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc 

I. PD, perdón, no ví que la experta Elsa Matilde ya le había respondido.

1 respuesta más de otro experto

Respuesta
3

El método DropDown sirve tanto para desplegar como para contraer el desplegable.

Intentalo agregando las siguientes instrucciones luego del End With:

Else
   If ComboBox1.Visible = True Then
      ComboBox1.Activate
      ComboBox1.DropDown
      ComboBox1.Visible = False
   End If
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas