Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Inserimento di ComboBox in folglio

Ultimo Aggiornamento: 21/08/2014 21:36
Post: 2
Registrato il: 02/09/2005
Città: ACCIANO
Età: 44
Utente Junior
2013
OFFLINE
21/08/2014 12:14

Buongiorno a tutti,

avrei bisogno di utilizzare una combobox in un foglio che mostri un elenco di valori presi da una porzione di un altro foglio.
Vorrei utilizzare il controllo ActiveX e non il controllo modulo.

Ho due problemi:

la lista di valori viene "scritta" sul foglio da una routine ed al termine di questa vorrei popolare la combobox, ma dalla routine non riesco ad "accederci". Allora la popolo con l'evento gotfocus della combo stessa. In pratica, appena ci si passa sopra il mouse, parte una routine che inserisce tutti i valori. E qui scatta il secondo problema: appena clicco sulla freccia della combo, scende la tendina, ma i valori non sono elencati, sono tutti nella prima riga (vedo solo il primo) e possono scorrerli con una mini barra di scorrimento che viene visualizzata. Tutto questo, solo al primo click sulla freccia della combo. Dal secondo click, la combo si comporta come voglio, ossia scende la tendina con tutti i valori. Credo sia una questione di settaggio di qualche proprietà, ma le ho modificate tutte ma non sono venuto a capo di nulla al momento. Grazie
Post: 2.573
Registrato il: 13/03/2012
Città: LIVORNO
Età: 78
Utente Veteran
2010
OFFLINE
21/08/2014 13:29

non faresti meglio ad allegare il tuo file ?

----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Post: 2
Registrato il: 02/09/2005
Città: ACCIANO
Età: 44
Utente Junior
2013
OFFLINE
21/08/2014 20:16

Re:
patel45, 21/08/2014 13:29:

non faresti meglio ad allegare il tuo file ?



Hai ragione. In allegato l'esempio.
Cliccando sulla freccia della combo, la tendina scende ma è compressa, ossia visualizza tutti non elencandoli. Selezionando il valore e cliccando nuovamente sulla freccia, questa volta la tendina scende popolata correttamente.

Chiedo scusa ma non riesco ad allegare il file direttamente quindi l'ho postato qui:

ESEMPIO.ZIP

Grazie
[Modificato da plutos999 21/08/2014 20:24]
Post: 479
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
21/08/2014 20:59

Ciao.
Ti basta sostituire all'evento GotFocus l'evento DropButtonClick:
Private Sub ComboBox1_DropButtonClick()
    Dim I As Integer
    ComboBox1.Clear
    I = 5
    Do While Sheets("Backup").Cells(I, 23) <> ""
        ComboBox1.AddItem Sheets("Backup").Cells(I, 23)
        I = I + 1
    Loop
End Sub


che può essere semplificata così:
Private Sub ComboBox1_DropButtonClick()
   ComboBox1.List = Sheets("Backup").Cells(5, 23).CurrentRegion.Value
End Sub
[Modificato da Zer0kelvin 21/08/2014 21:06]
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 3
Registrato il: 02/09/2005
Città: ACCIANO
Età: 44
Utente Junior
2013
OFFLINE
21/08/2014 21:22

Re:
Zer0kelvin, 21/08/2014 20:59:

Ciao.
Ti basta sostituire all'evento GotFocus l'evento DropButtonClick:
Private Sub ComboBox1_DropButtonClick()
    Dim I As Integer
    ComboBox1.Clear
    I = 5
    Do While Sheets("Backup").Cells(I, 23) <> ""
        ComboBox1.AddItem Sheets("Backup").Cells(I, 23)
        I = I + 1
    Loop
End Sub


che può essere semplificata così:
Private Sub ComboBox1_DropButtonClick()
   ComboBox1.List = Sheets("Backup").Cells(5, 23).CurrentRegion.Value
End Sub



Grazie 1000, funzionano entrambe le soluzioni. Ho notato solo due cosucce.

Con la prima soluzione, l'evento selezionato dalla tendina non rimane visualizzato nel controllo.

Con la seconda soluzione, il valore viene mostrato, però quando viene fatto un click in un altro punto del foglio, il valore nel controllo cambia per una frazione di secondo per poi tornare al valore selezionato.

Comunque ottimo, grazie....
Post: 4
Registrato il: 02/09/2005
Città: ACCIANO
Età: 44
Utente Junior
2013
OFFLINE
21/08/2014 21:36

Re: Re:
plutos999, 21/08/2014 21:22:



Grazie 1000, funzionano entrambe le soluzioni. Ho notato solo due cosucce.

Con la prima soluzione, l'evento selezionato dalla tendina non rimane visualizzato nel controllo.

Con la seconda soluzione, il valore viene mostrato, però quando viene fatto un click in un altro punto del foglio, il valore nel controllo cambia per una frazione di secondo per poi tornare al valore selezionato.

Comunque ottimo, grazie....



Per la soluzione 2 ho risolto spostando il focus su una cella del foglio. Quindi questa è quella che fa al caso mio.

Per il "primo" ho invece capito dove sta l'inghippo... Grazie!!!!

Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Condizionare contenuto di una combox in base a selezione della combobox precedente (4 messaggi, agg.: 16/06/2014 10:21)
ComboBox (5 messaggi, agg.: 03/12/2020 19:52)
% ComboBox (17 messaggi, agg.: 30/07/2021 13:57)
Combobox (3 messaggi, agg.: 18/02/2023 17:56)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 07:42. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com