• Collegare più liste di dati con Excel 2007 e VBA

    liste-concatenate.jpg

    Le liste di dati permettono di effettuare un input controllato, su un foglio di calcolo, in modo da limitare la libertà di inserimento e migliorare il controllo e la convalida dei dati.

    Una ulteriore comodità è utilizzare liste il cui contenuto sia dinamico e dipendente dal valore di altre liste. Vedremo oggi come implementare facilmente questa funzionalità tramite VBA.

    In questo esempio collegheremo fra loro solo due liste, ma il procedimento è facilmente ampliabile. Organizziamo nel modo seguente il foglio di calcolo:

    • nella prima colonna inseriamo le voci della prima lista;
    • nella seconda colonna inseriamo i dati che dovranno comparire qualora si scegliesse nella prima lista la prima voce;
    • continuiamo così per tutte le voci della prima lista.

    Adesso clicchiamo nel Ribbon “Sviluppo” -> “Inserisci” e dai controlli ActiveX inseriamo nel nostro foglio due “Caselle di riepilogo” senza rinominarle.

    Clicchiamo sempre dal menu Sviluppo il pulsante “Visual Basic” per aprire l’editor VBA. Facciamo doppio click sull’oggetto “Foglio1″ e inseriamo il seguente codice:

    Private Sub ListBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ListBox2.Clear
    i = 1
    While Foglio1.Cells(i, 2 + ListBox1.ListIndex) < > "
    Foglio1.ListBox2.AddItem (Cells(i, 2 + ListBox1.ListIndex))
    i = i + 1
    Wend
    End Sub

    Adesso apriamo l’ogetto “This workbook” e inseriamo il seguente codice:

    Private Sub Workbook_Open()
    Foglio1.ListBox1.Clear
    i = 1
    While Foglio1.Cells(i, 1) < > "
    Foglio1.ListBox1.AddItem (Foglio1.Cells(i, 1))
    i = i + 1
    Wend
    End Sub

    Fatto ciò salviamo il foglio di lavoro con l’estensione “.XLSM” e riavviamo l’applicazione. Se tutto sarà stato fatto in maniera corretta, all’avvio verrà caricata la prima lista di dati e, cliccando uno degli elementi della prima lista, verrà caricata la seconda con i relativi dati.

    Tags:

    Se vuoi aggiornamenti su Collegare più liste di dati con Excel 2007 e VBA inserisci la tua e-mail nel box qui sotto:


    Ho letto e acconsento l'informativa sulla privacy

    Si No

    Acconsento al trattamento dei dati personali di cui al punto 3 dell'informativa sulla privacy

    Si No

    Commenti

    1. luigi dice:

      le descrizioni sono perfette e sono riuscito a creare il collegamento fra più liste di dati. Il problema adesso è che i dati nella seconda cella , NON sono lavorabili , cioè non posso usarli per dei calcoli. Come risolvo il problema ?

    Commenta

    Your email address will not be published. Required fields are marked *