Variar posición de un combobox

03/11/2006 - 16:04 por kusflo | Informe spam
¿Cómo puedo lograr que la posición de un combobox cambie en función de la
celda a la que esta relacionado mediante la propiedad "LinkedCell"?. Lo que
quiero saber es como puedo hacer que la posición absoluta del combobox cambie
(por ejemplo que vaya bajando en función de lo que yo le asigne a la
propiedad "linkedcell" mediante código).




"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.

Preguntas similare

Leer las respuestas

#1 Vinchenzo vinç
03/11/2006 - 18:19 | Informe spam
"kusflo" (donotspam)> escribió en el mensaje news:
¿Cómo puedo lograr que la posición de un combobox cambie en función de la
celda a la que esta relacionado mediante la propiedad "LinkedCell"?. Lo que
quiero saber es como puedo hacer que la posición absoluta del combobox cambie
(por ejemplo que vaya bajando en función de lo que yo le asigne a la
propiedad "linkedcell" mediante código).



Partiendo de la base que el valor de la celda asignada a la propiedad '.LinkedCell' lo modifica precisamente el cambio de selección del 'ComboBox', tan sólo tienes que interceptar el evento '_AlCambiar' del objeto.

Selecciona el control, y en la barra de herramientas "Formularios", presiona el icono "Modificar código", y en un módulo estándar se te mostrará el procedimiento.
Luego puedes hacer por ejemplo algo similar a lo siguiente:

'******************
Sub ListaDesplegable1_AlCambiar()
Dim cboLista As DropDown
Set cboLista = ActiveSheet.DropDowns("Lista desplegable 1")
With cboLista
MsgBox "Valor en LinkedCell = " & .Range(.LinkedCell).Text
.Top = 0
.Left = 0
...
End With
End Sub
'******************


Saludos
( ! ) Respuestas precedentes en Google:
http://groups.google.com/group/micr...c.es.excel
( i ) Temperancia en el foro:
http://support.microsoft.com/defaul...newsreglas
Respuesta Responder a este mensaje
#2 kusflo
03/11/2006 - 18:54 | Informe spam
Creo que no partimos de la base correcta.
Este es el código que ejecuto cada vez que algo cambia en la hoja. Este
código se encuentra en el módulo de la hoja.


Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'Mostramos el cuadro combinado cuando cualquier celda de la columna 13 es
seleccionada

If ActiveCell.Column = 13 Then
Dim ORIGEN As String
ORIGEN = ActiveCell.Address
Me.com_descripcion_compras.LinkedCell = ORIGEN
'--
Es aqui donde quiero situar físicamente al combo
(com_descripcion_compras) a
la altura de la celda almacenada en la variable ORIGEN
'
Me.com_descripcion_compras.Visible = True
Me.com_descripcion_compras.Activate

End If


End Sub
Respuesta Responder a este mensaje
#3 Vinchenzo vinç
03/11/2006 - 19:25 | Informe spam
"kusflo" (donotspam)> escribió en el mensaje news:
Creo que no partimos de la base correcta.



Ya veo, pero viene a ser lo mismo.
Sería así:

Me.com_descripcion_compras.Top = Target.Top

Fíjate además que en tu código puedes prescindir completamente de la variable ORIGEN:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'Mostramos el cuadro combinado cuando cualquier celda de la columna 13 es
seleccionada

If Target.Column = 13 Then
Me.com_descripcion_compras.LinkedCell = Target.Address
'--
Es aqui donde quiero situar físicamente al combo
(com_descripcion_compras) a
la altura de la celda almacenada en la variable ORIGEN



Me.com_descripcion_compras.Top = Target.Top

'
Me.com_descripcion_compras.Visible = True
Me.com_descripcion_compras.Activate

End If


End Sub




Saludos
( ! ) Respuestas precedentes en Google:
http://groups.google.com/group/micr...c.es.excel
( i ) Temperancia en el foro:
http://support.microsoft.com/defaul...newsreglas
Respuesta Responder a este mensaje
#4 kusflo
06/11/2006 - 11:04 | Informe spam
Excelente Vinchenzo, estoy deseando probarlo. Gracias por la explicación!.
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida