Risultati da 1 a 17 di 17

Discussione: popolare una listbox con più colonneuest



  1. #1
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3345
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49

    popolare una listbox con più colonneuest

    Salve.
    Ho una user form con list box che vorrei popolare con dei dati presenti sul foglio ho impostato il tutto ma dopo aver inserito il primo dato non riesco a passare alla colonna successiva (sulla listbox) e mi viene un errore che non riesco a spiegarmi.

    ERRORE di RunTime '381'
    Impossibile impostare la proprietà list. Indice della matrice di proprietà non valido.

    Premetto che nelle proprietà ho messa che è una multicolonna

    il codice è questo e la riga incriminata è quella in rosso :

    Codice: 
    Private Sub UserForm_Activate()
    
    Dim riga As Integer
    Dim società As String
    Dim Ri, Co, X As Integer
    
    
    società = InputBox("Imposta società")
    
    
    riga = Worksheets(1).UsedRange.Rows.Count + 1
    
    
    For Ri = 1 To riga
        
        If Cells(Ri, 2) <> società Then GoTo prossimo
          LstElenco.AddItem Cells(Ri, 1)
          
        For Co = 2 To 8
           X = LstElenco.ListCount
           LstElenco.List(X, Co - 1) = Cells(Ri, Co)
     Next
    prossimo:
    Next
    
    
    End Sub
    allego anche un file di prova.

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  2. #2

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    Ciao Baloon,
    la userform nel file allegato è vuota...:92:

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  3. #3
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3345
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Certo. Premendo il pulsante dovrebbe popolarsi con i dati del foglio1 da colonna A a colonna H per tutte le righe che hanno il nome società impostato nell'inputbox.

    :57:

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  4. #4

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    Ah ok... la listbox prende tutta la userform.. :292::1172:

    Scusa della domanda scema...

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  5. #5

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    Ciao Baloon,
    un errore è sicuramente con la variabile X.
    L'indice di una listbox parte da zero, quindi dovresti mettere:

    X = LstElenco.ListCount - 1

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  6. #6
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3345
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao Baloon,
    un errore è sicuramente con la variabile X.
    L'indice di una listbox parte da zero, quindi dovresti mettere:

    X = LstElenco.ListCount - 1
    Hai ragione ma lo 0 è già occupato dalla data. se provi a mettere l'apice alla riga che da' errore, vedrai che la listbox si popola con la data che è il valore della prima colonna nel foglio1.

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  7. #7
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Torino
    Età
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Baloon_50 Prova a Scaricare il mio File e Guarda sè ti può piacere Saluti da Maurizio
    Il mio Link è : https://app.box.com/s/7rqn1ps9n94x5a6rt2rxm9in3hzvp4tn

  8. #8

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    Ciao Baloon,
    ho aggiunto altri 2 controlli:

    LstElenco.ColumnCount = 8
    LstElenco.ColumnWidths = xlAutomatic

    ora dovrebbe funzionare.
    Ti riallego il file....

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  9. #9

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1024
    Versione Office
    .
    Likes ricevuti
    367
    Likes dati
    0
    Citazione Originariamente Scritto da Baloon_50 Visualizza Messaggio
    Hai ragione ma lo 0 è già occupato dalla data. se provi a mettere l'apice alla riga che da' errore, vedrai che la listbox si popola con la data che è il valore della prima colonna nel foglio1.
    Ciao,

    Oltre a quanto segnalato da cromagno (X = LstElenco.ListCount - 1) devi impostare la proprietà ColumnCount della ListBox al numero di colonne necessarie (8).
    Bye!
    scossa
    scossa's web site
    ___
    Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)

  10. #10

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1024
    Versione Office
    .
    Likes ricevuti
    367
    Likes dati
    0
    Ops, ho visto che cromagno mi ha anticipato ..... vabbeh, un saluto a tutti.
    Bye!
    scossa
    scossa's web site
    ___
    Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)

  11. #11

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    Ciao scossa,
    meglio sempre avere la tua approvazione :246:

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  12. #12
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3345
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Ragazzi non so come ringraziarvi adesso ho capito bene come funge. :97: Grazie ancora a Cromagno e Scossa. Maurizio un grazie particolare anche a te adesso guardo il tuo file e poi ti saprò dire.

    :222:

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  13. #13
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3345
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da A.Maurizio Visualizza Messaggio
    Ciao Baloon_50 Prova a Scaricare il mio File e Guarda sè ti può piacere Saluti da Maurizio
    Il mio Link è : https://app.box.com/s/7rqn1ps9n94x5a6rt2rxm9in3hzvp4tn
    Maurizio grazie ancora ma non credo che il tuo file soddisfi le mie esigenze perchè io devo popolare più colonne e comunque la mia form va poi messa in un contesto ben più complesso.

    :261:

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  14. #14
    L'avatar di zio_tom
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Veneto
    Messaggi
    526
    Versione Office
    2010 - Win10
    Likes ricevuti
    64
    Likes dati
    17
    siccome la cosa mi sembra piuttosto interessante riporto il listato funzionante (non è opera mia ma di cromagno)
    Codice: 
    Private Sub UserForm_Activate()
        Dim riga As Integer
        Dim società As String
        Dim Ri, Co, X As Integer
        
        società = InputBox("Imposta società")
        
        riga = Worksheets(1).UsedRange.Rows.Count + 1
        LstElenco.ColumnCount = 8
        LstElenco.ColumnWidths = xlAutomatic
        
        For Ri = 1 To riga
            If Cells(Ri, 2) <> società Then GoTo prossimo
            LstElenco.AddItem Cells(Ri, 1)
            For Co = 2 To 8
               X = LstElenco.ListCount - 1
               LstElenco.List(X, Co - 1) = Cells(Ri, Co)
            Next Co
    prossimo:
        Next Ri
    End Sub
    n°3 - Win10pro + Office 2010 ----- n°1 - Win7pro + Office 2010 ----- n°1 - WinXPpro + Office 2010

  15. #15
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Torino
    Età
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Cio Ragazzi c'è qualcuno che se la sente di Aiutarmi per L'ultima volta ; in quanto poi dopo questo mio Ultimo sacrificio , non penso di Voler più Continuare a fare cose Nuove o altro.
    E anche vero che quello che vi stò per chiedere e una vita che stò Tentando di Ricostruire dai miei vecchi programmi , ma che sino ad ora non ero mai riuscito a realizzare in quanto ; Non avevo ancora Acquisito le basi Fondamentali di Questo Programma ; Ora però Bando alle ciance e passo al Dunque.
    Il mio problema e Questo :
    Tutti Sicuramente conoscono il Gioco della Dama ; Bene !
    Il mio problema e questo : Avendo Nominato le Pedine nere N1 sino a N12 e le Pedine Bianche B1 alla B12.
    Mi piacerebbe sapere Come da programma posso far Capire che tanto per Uno Schieramento che per L'altro se arrivano nella Parte Alta della propria Scacchiera Diventano Dama per qui Cambiano Aspetto.
    Ora premetto due Cose :
    1 ) che il mio piano di gioco parte dalla cella C3:J10 ; Pero bisogna fare una precisazione ! E vero che nel Piano di gi gioco vengono Calcolate le 64 Celle (Bianche e Nere) , Però solo 32 Celle vengono prese in Considerazione .
    2 ) Che per Quanto Riguarda il Cambio di immagine ho già capito io come fere , Per qui mi mancherebbe solo sapere , come dire sè una ho più pedine nere Raggiungono la Parte bassa della Scacchiera esse canbiano Figura.
    Idem per le Pedine bianche.
    In caso contrario no.Tutto qui Grazie sin da ora per il Vostro Aiuto ho contributo che sia Saluti da A:Maurizio

  16. #16
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Torino
    Età
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Baloon_50 Bè...! Anche il mio Programma Lavorandoci un pochino sopra poteva risultare come quello che ti ha fornito Zio_Tom ho ; Scossa ho altri .
    Io lo costruito in quel modo perche non sapevo quante righe e quante Colenne tu avessi Bisogno .
    In tal Caso bastava Semplicenete portare il Numeratore da 5 a 500 - e 1 a tot di Colonne e il risultato non cambiava.
    Comunque Hai fatto bene a seguire il tuo Istinto Ciao e buona Domenica a Tutti

  17. #17

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4027
    Versione Office
    2013
    Likes ricevuti
    1229
    Likes dati
    925
    @Maurizio
    Ciao,
    dovresti aprire una nuova discussione...
    Questa tra l'altro è già risolta, quindi il tuo problema risulta alquanto celato.

    Comunque, per quanto hai scritto, basterebbe un controllo della riga anche se non credo sia di così semplice risoluzione il tuo problema.
    Certo che senza vedere tutto il codice o il file, risulta un pò difficile risponderti.

    Ciao

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

Discussioni Simili

  1. Popolare la ListBox dal ComboBox scegliendo le voci.
    Di Pacifico437 nel forum Domande su Excel VBA e MACRO
    Risposte: 7
    Ultimo Messaggio: 12/03/17, 15:43
  2. [Risolto] Popolare la ListBox da Combobox
    Di Pacifico437 nel forum Domande su Excel VBA e MACRO
    Risposte: 9
    Ultimo Messaggio: 08/03/17, 08:49
  3. Come popolare una ListBox
    Di aurelio125 nel forum Domande su Excel VBA e MACRO
    Risposte: 9
    Ultimo Messaggio: 11/11/16, 01:24
  4. Popolare ListBox dal ComboBox
    Di Pacifico437 nel forum Domande su Excel VBA e MACRO
    Risposte: 4
    Ultimo Messaggio: 11/09/16, 20:07
  5. Popolare listbox con loop su userform
    Di Teopaguz nel forum Domande su Excel VBA e MACRO
    Risposte: 1
    Ultimo Messaggio: 25/05/16, 20:15

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •