Lisbox convalidate come filtro
Hai un problema con Excel? 
Lisbox convalidate come filtro
di clachi80 data: 12/01/2014 22:15:38
Ciao! Vorrei creare una useform con diverse Listbox interdipendenti l'una dall'altra da utilizzare come filtro.
Allego un file, senza codice o userform, ma dove presento una grafica stilizzata di come dovrebbe apparire. Sotto la grafica l'eleno dei dati sui quali andranno ad agire le listbox. L'elenco dei dati non cambia, ma solo i valori della colonna valori.
Nel file, in alto ho le listbox, sotto le list box ho una text box che riporta i risultati dei filtri fatti sulle listbox, e sempre nella textbox ho dei "riquadri" dove andrò a scrivere dei valori che verrano in automatico riportati nelle celle sotto la colonna valori.
Guardando l'esempio 1, l'utente dovrebbe selezionare "Addio" nella prima list box, in automatico nelle altre listbox scomparirebbero tutti i valori che non hanno alcun legame con la parola "Addio" (ad esempio "Genova" nella seconda listbox", tutti i numeri tranne "2, 3 e 8" nella terza listbox e così Via). Poi l'utente seleziona "Milano" nella seconda listbox (e scompare "8" nella terza", e così via), e infine seleziona "2" nella terza listbox. Nella textbox il risultato sarà quello mostrato nel file Es.1 e l'utente potrà scrivere nei corrispondenti riquadri blu i valori che vuole.
Nel Es. 2 l'utente avrà selezionato invece solo "Mela" nella quinta listbox e il risultato nella textbox sarà quello mostrato nel file; chiaramente nelle altre listbox scompariranno automaticamente tutti i valori che non sono legati a Mela.
In più l'utente dovrebbe poter fare selezioni multiple. Ad esempio selezionare sia "Ciao", sia "Addio" nella prima listbox...
Ho guardato diversi siti e forum, ma non sono riuscito a trovare nulla che spiegasse chiaramente come convalidare le varie listbox in modo che la scelta fatta in qualsiasi listbox andasse a condizionare anche le altre (al massimo ho trovato listbox legate a "cascata"...)
Potete darmi qualche suggerimento?
Grazie!!
di Grograman data: 13/01/2014 08:36:47
cit: "Allego un file, senza codice o userform"
Personalmente mi sono fermato a leggere qui :D
di patel data: 13/01/2014 09:00:21
Allora non inizio neanche a leggere
di LucaS. (utente non iscritto) data: 13/01/2014 15:43:45
Potresti usare delle combobox.:Le fai riempire tutte all'apertura del file e poi con l'evento change di ogni combobox usi il select case per stabilire come modificare le altre.
Così però non puoi fare selezioni multiple.
Per selezionare più voci dovresti usare le checkbox: spuntando le varie voci decidi quali diventano inattive.
Allego un file di esempio.
di clachi80 (utente non iscritto) data: 15/01/2014 17:44:18
Ho creato il codice dopo varie ricerche e tentativi. Ora riesco a selezionare più item in una listbox e utilizzare la selezione come criteria per filtrare i valori della listbox successiva. Però mi sono bloccato su 2 punti:
1) Non riesco ad applicare in maniera coerente i criteri per filtrare in contemporanea anche i valori della listbox3
2) Non so come fare in modo che qualsiasi valore venga selezionato in qualsiasi listbox (quindi non ha importanza se parto dalla listbox1 o la listbox(n)) i valori delle altre listbox vengano filtrati in maniera coerente.
Ho trovato moduli che fanno essattamente quello che sto cercando, ma utilizzano le classi e sono troppo complicati per il mio livello di conoscenza excel VBA....
Spero possiate aiutarmi!
Grazie!
Vuoi Approfondire?