g43ry ha chiesto in Computer e InternetSoftware · 1 decennio fa

menù a tendina excel?

in un software xls fatto in casa ho visto dei menù a tendina che a differenza di quelli che usando excel con la funzione convalida (gli unici che so fare) si potevano spostare e ingrandire come un immagine e a differenza degli altri non avevano l'obbligo di stare in una determinata cella.qualcuno saprebbe dirmi come si fanno??grazie

1 risposta

Classificazione
  • 1 decennio fa
    Risposta preferita

    Devi gestirli scrivendo una macro VBA.

    Per disegnarli devi prima visualizzare la barra degli Strumenti di controllo, per farlo premi il tasto destro sopra una toolbar qualsiasi e spunta la voce "Strumenti di controllo".

    Quando ti appare la barra premi sul primo pulsante, a forma di squadretta con matita, questo ti permette di Entrare e Uscire dalla modalità progettazione.

    Ora scegli dalla barra strumenti un "menu a tendina" che poi forse intendevi "casella combinata" o "casella di riepilogo". Una volta che hai cliccato sopra vai nel foglio Excel, il cursore appare come una piccola crocetta, premi il sinistro del mouse e trascina a dimensionare il controllo. Vedrai la combobox sovrapposta alle celle.

    Clicca sulla combobox e premi il destro, appare un menu, scegli Proprietà, qui puoi cambiare le proprietà del font, dimensione, colori ecc.

    Così si costruisce un controllo, ma per gestirlo devi scrivere del codice nel Visual Basic Editor. Se fai doppi click all'interno della combo sarai ridirezionato all'interno dell'evento Change della combobox, cioè qui dovrai scrivere il codice di cosa succede quando cambi un valore.

    E i valori dove si scrivono? Occorrerà scrivere ulteriore codice quando il foglio viene aperto, es., se alla comboBox gli dai Proprietà (Name) = cboColori,

    'Questo listato lo scrivi da VBeditor all'interno del tuo foglio es. Foglio1

    Sub SettaCombo ()

    'Svuoto la combobox

    cboColori.clear

    'Aggiungo i valori

    cboColori.additem "Giallo"

    cboColori.additem "Verde"

    cboColori.additem "Rosso"

    'Imposto di default il colore Verde (0=Giallo, 2=Rosso)

    cboColori.listindex = 1

    End sub

    'gestione evento Change

    Private Sub cboColori_Change()

    'Scrive nella cella G1 il valore scelto nella combobox

    Cells(1, 5) = cboColori.Text

    End Sub

    'Per avviare il tutto dovrai aggiungere un Modulo e all'interno di questo scrivere:

    Sub Auto_Open()

    'MsgBox "Modulo1 >> AVVIO MACRO"

    Foglio1.SettaCombo

    End Sub

    Al termine esci dalla Modalità progettazione.

    Se sei interessato a creare delle interfacce di questo tipo devi imparare il linguaggio VBA, in internet troverai sicuramente dei tutorial in aiuto.

Altre domande? Fai una domanda e ottieni le risposte che cerchi.