Il controllo ActiveX Combobox disponde di numerose proprieta' utili a impostare, in fase di inserimento (tramite la finestra Proprieta') o successivamente (tramite codice macro) le caratteristiche e il comportamento dell'oggetto; vedi l'help on line del vba alla voce "Controllo Combobox" per i dettagli.
Ad esempio, avendo impostato un Combobox1 senza particolari proprieta', con questa macro di Worksheet_SelectionChange programmi posizione, elenco, cella collegata:
- Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With ComboBox1
.Top = Target.Top
.Left = Target.Offset(0, 1).Left
.Height = Target.Height * 2
.LinkedCell = Target.Address
If Target.Address = "$A$2" Then
.Visible = True
.List = Array(2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019)
.ListIndex = 0
ElseIf Target.Address = "$B$2" Then
.Visible = True
.List = Array("Gen", "Feb", "etc etc")
.ListIndex = 0
Else
.Visible = False
End If
End With
End Sub
Va messa nel modulo di codice a cui appartiene il combobox, cosa che puoi fare selezionando il combobox appena disegnato (quindi ancora in "Modalita' progettazione") e premendo Visualizza codice.
Poi esci dalla Modalita' programmazione e seleziona varie celle tra cui A2 e B2
E' un esempio, fatto per dimostrare una delle tante cose che si possono fare...
Ciao