Freeforumzone mobile

caricare una combobox con i valori di una colonna in ordine alfabetico

  • Posts
  • OFFLINE
    roberto pironi
    Post: 55
    Registered in: 6/18/2010
    Location: LUGO
    Age: 65
    Junior User
    Excell 2016
    00 9/15/2019 3:27 PM
    Salve vorrei sapere se è possibile caricare una ComboBox coi valori estrapolati da una colonna messi in ordine alfabetico.
    Per essere più preciso: nel file di esempio che allego vorrei che nella Cbo_Autore mi comparissero tutti i nominativi trovati nella colonna B però in ordine alfabetico.
    Grazie per eventuali suggerimenti
  • OFFLINE
    dodo47
    Post: 2,391
    Registered in: 4/6/2013
    Location: ROMA
    Age: 72
    Veteran User
    2010
    00 9/15/2019 4:15 PM
    Ciao
    non puoi usare ...to 400, perchè ordinando i valori ti verrebbero all'inizio una marea di spazi vuoti.

    E poi perchè ripetere lo stesso nominativo per più di una volta?


    Private Sub UserForm_Activate() ' Perchè non Initialize???
    Dim N
    lr = Range("B" & Rows.Count).End(xlUp).Row
    For N = 2 To lr
        If WorksheetFunction.CountIf(Range("B2:B" & lr), Cells(N, 2)) = 1 Then
            Cbo_Autore.AddItem Cells(N, 2).Value
        End If
    Next
    For a = 0 To Me.Cbo_Autore.ListCount - 1
      For b = a To Me.Cbo_Autore.ListCount - 1
            If Me.Cbo_Autore.List(b) < Me.Cbo_Autore.List(a) Then
                c = Me.Cbo_Autore.List(a)
                Me.Cbo_Autore.List(a) = Me.Cbo_Autore.List(b)
                Me.Cbo_Autore.List(b) = c
           End If
      Next
    Next
    End Sub


    Saluti




    [Edited by dodo47 9/15/2019 6:30 PM]
    Domenico
    Win 10 - Excel 2016
  • OFFLINE
    roberto pironi
    Post: 55
    Registered in: 6/18/2010
    Location: LUGO
    Age: 65
    Junior User
    Excell 2016
    00 9/16/2019 11:44 AM
    grazie dodo47 ho seguito il tuo consiglio però ora me li ha messi in ordine alfabetico, ma alcuni nominativi non me li fa più vedere (...Beatles, Equipe84, Battisti ecc.) come è possibile ???
    Ciao
  • OFFLINE
    dodo47
    Post: 2,392
    Registered in: 4/6/2013
    Location: ROMA
    Age: 72
    Veteran User
    2010
    00 9/16/2019 12:33 PM
    ciao
    si scusa, errore di battitura:

    .....
    If WorksheetFunction.CountIf(Range("B2:B" & N), Cells(N, 2)) = 1 Then '<<<<<<<<<<<<<<
    .....


    Con l'occasione in B71 correggi "i Giganti" con Giganti (oppure viceversa tutte le celle che hanno "Giganti" con i Giganti).

    In B24 togli lo spazio iniziale

    Saluti

    [Edited by dodo47 9/16/2019 12:44 PM]
    Domenico
    Win 10 - Excel 2016
  • OFFLINE
    roberto pironi
    Post: 56
    Registered in: 6/18/2010
    Location: LUGO
    Age: 65
    Junior User
    Excell 2016
    00 9/16/2019 1:40 PM
    Ti ringrazio infinitamente dodo47 .... così è tutto perfetto
    ciao [SM=x423028]
  • OFFLINE
    Genovese74
    Post: 4
    Registered in: 4/11/2017
    Location: ARPAIA
    Age: 45
    Junior User
    Excel 2007
    00 9/23/2019 9:42 AM
    buongiorno,

    se lo stesso codice lo utilizzo per popolare la combo con date queste me le mette in ordine per giorno ma non per mese come dovrei modificarlo??
    Grazie
  • OFFLINE
    dodo47
    Post: 2,397
    Registered in: 4/6/2013
    Location: ROMA
    Age: 72
    Veteran User
    2010
    00 9/23/2019 9:49 AM
    prova ad utilizzare cDate oppure cLng sulla if...

    saluti



    Domenico
    Win 10 - Excel 2016
  • OFFLINE
    Genovese74
    Post: 5
    Registered in: 4/11/2017
    Location: ARPAIA
    Age: 45
    Junior User
    Excel 2007
    00 9/23/2019 12:10 PM
    Perfetto dodo47 funziona perfettamente con cDate invece con cLng mi ma tipo non corrispondente

    Grazie per la dritta