Llamar combobox o listbox en cualquier hoja

Elsa Matilde, buenos días.
Amiga necesito su ayuda: regálame opciones de macros para llamar un listbox o combobox en cualquier hoja de un libro; ojala en un rango especifico llámese A5 O B10 según la necesidad y que se pueda colocar los datos en la celda activa.

1 respuesta

Respuesta
1
Sí, ya entendí lo que necesitas. Es que estuve muy ocupada.
Para crear y cargar un combobox desde cualquier hoja esta es la rutina: (trabajé con Combobox de la barra de Herramientas Cuadro de controles)
Sub Macro6()
' Macro grabada el 26/05/2005 por Elsamatilde
'se crea el control
Application.CommandBars("Control Toolbox").Visible = True
ActiveSheet.OLEObjects.Add(ClassType:="Forms.Combobox.1", Link:=False, _
DisplayAsIcon:=False, Left:=246, Top:=9, Width:=126.75, Height:=31.5) _
.Select
'se carga con los datos de la hoja Pedidos (ajustar el nombre y rango)
With Selection
.ListFillRange = "Pedidos!A17:A23"
End With
Application.CommandBars("Control Toolbox").Visible = False
End Sub
Luego de que selecciones el valor, podes tener otra rutina que vuelque el valor elegido en la celda activa:
Sub macro2()
ActiveCell.Value = ActiveSheet.ComboBox1.Value
End Sub
Si a ambas le asignas un atajo de teclado será más dinámica.
Otro caso: Si siempre habrá un combo en las hojas, no ejecutarás la Macro1 para crearlo, sino que ya lo tienes, entonces solo necesitas asignar unas instrucciones a este control para que te vuelque el valor seleccionado en la celda.
Clic derecho sobre el combo, opción Ver código. En el Editor verás:
Private Sub combobox1_click ()
End Sub
Entre estas 2 agregá esta línea:
ActiveCell.Value = ActiveSheet.ComboBox1.Value

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas