You are here:Home-Domande su Excel VBA e MACRO-[RISOLTO] Ricerca successiva tramite radice di un dato inserito in una colonna
[RISOLTO] Ricerca successiva tramite radice di un dato inserito in una colonna2019-06-21T16:45:35+02:00

Home Forum Domande su Excel VBA e MACRO [RISOLTO] Ricerca successiva tramite radice di un dato inserito in una colonna

Visualizzazione 8 filoni di risposte
  • Autore
    Post
    • Avatarrobert pyron
      Partecipante
        Post totali: 19

        Salve ho un problema che non so risolvere: effettuando una ricerca tramite una UserForm, nella quale inserisco solo parte del nome,  sui dati riportati sulla colonna “A”, una volta trovato il 1° nome della lista cliccando il pulsante Successivo vorrei trovare il 2° nome della lista , cliccando nuovamente  il 3° ecc…. fino ad esplorare tutti i dati della colonna.

        Allego un file di esempio

         

        https://www.filedropper.com/audio2

         

         

         

        http://www.filedropper.com/audio2

        • Questo topic è stato modificato 1 anno, 1 mese fa da sidsid.
      • BySalvBySalv
        Amministratore del forum
          Post totali: 759

          Ciao Robert, ho preferito inserire una Listbox, per la ricerca, anche perche non mi trovo a mio agio quando rinominano gli oggetti di Excel, tipo Textbox o altro.

          inserendo mano a mano le lettere nel textbox del brano nella listbox vengono filtrati, quindi non devi fare Successivo, ad esempio se inserisci “z” ti fa vedere solo “Pizza” o tutte le parole che la contengono la “z”, poi nella listbox fai la selezione con “DoppioClick sul nome.

          a questo punto compaiono tutti i dati nelle altre Textbox.

          penso che era quello che ti serviva.

          http://www.filedropper.com/audio2_1

          Ciao By Sal (8-D

          Ciao By Sal (8-)
          se ti piace la soluzione aiuta a sostenere il Forum con una DONAZIONE a piacere, Grazie

        • Avatarrobert pyron
          Partecipante
            Post totali: 19

            Ciao By Sal , ti ringrazio per il suggerimento  ma a me serviva  proprio come avevo postato , magari con un Pulsante NEXT  e un pulsante BACK  per scorrere la ricerca in base alla radice.

            Ti ringrazio ugualmente

            Robert :bye:

          • Avatarrobert pyron
            Partecipante
              Post totali: 19

              Ciao Bye Sal  ho riadattato il mio “lavoro” secondo il tuo suggerimento ed è perfetto così !!! Scusa ma in un primo momento non riuscivo capire come adattarlo alle mie esigenze  … poi invece mi sono accorto che era proprio quel che mi serviva. Grazieeeeeee infinite :good: :good: :bye: :bye:

            • Avatarrobert pyron
              Partecipante
                Post totali: 19

                … scusa BY Sal se ne approfitto , ma se volessi creare un’altra Userform che fa riferimento questa volta ad una nuova lista  che però questa volta è sul Foglio2  ??? come posso fare  ??? :wacko:

              • BySalvBySalv
                Amministratore del forum
                  Post totali: 759

                  Ciao Robert, non devi fa altro che usare la stessa userform, ma cambi gli indirizzi del foglio e del range.

                  quindi quando con il pulsante apri l’userform gli dai anche il foglio ed il range diverso.

                  Non penso che tieni aperte 2 userform

                  se non ci riesci siamo qui.

                  Ciao By Sal (8-D

                   

                   

                   

                   

                  Ciao By Sal (8-)
                  se ti piace la soluzione aiuta a sostenere il Forum con una DONAZIONE a piacere, Grazie

                • Avatarrobert pyron
                  Partecipante
                    Post totali: 19

                    Ho cambiato l’indirizzo del foglio … ma non funziona , dove sbaglio ???? :wacko:

                    http://www.filedropper.com/prova_1

                  • BySalvBySalv
                    Amministratore del forum
                      Post totali: 759

                      Ciao Robert, ci sarebbero molte cose da dire, comunque diciamo le più necessarie.

                      Quando hai creato il secondo pulsante per il foglio2 non hai notato che fa riferimento al lancio della Macro1 quindi in effetti ti apre sempre la prima userform, la seconda è diversa come dimensione.

                      sistemato questo, non ci avrai fatto caso, ma nella prima userform, ho fatto uso della “Gestione Nomi” nominando il range dei dati con il Nome “Dati”, questo perche non sapendo a priori quale sia la dimensione dei dati quante righe comprende in questo modo non sto a prendere l’ultima riga occupata.

                      a questo punto ho fatto la stessa cosa per il Foglio2 però il range questa volta l’ho nominato”Dati2″ come puoi vedere qui

                      Private Sub Txt_BRANO_Change()
                      Dim CL, rng, cont, n
                      Set rng = Range("Dati2")
                      cont = 0
                      ListBox1.Clear
                      For Each CL In rng
                          If CL Like Txt_BRANO & "*" Then
                              n = CL.Column
                              If n = 1 Then
                                  With ListBox1
                                      .AddItem
                                      .List(cont, 0) = CL.Value
                                      .List(cont, 1) = CL.Offset(0, 1)
                                      .List(cont, 2) = CL.Offset(0, 2)
                                      .List(cont, 3) = CL.Offset(0, 3)
                                  End With
                                  cont = cont + 1
                              End If
                          End If
                      Next CL
                      End Sub

                      alla terza riga, inoltre il ciclo “For Each” relativo ad un range controlla tutte le celle se il dato corrisponde, ma a noi interessa fare la ricerca solo sulla prima colonna ecco il motivo che ho inserito un limitatore di controllo sulla colonna1

                      n = Cl.Column
                      If n = 1 Then

                      per cui se il dato trovato sta sulla prima colonna lo inserisce nella Listbox.
                      senza questo controllo ti riporta anche “CCCC” che si trova nella colonna2, nel listbox.

                      come ho detto ci sarebbero altre cose da dire, ma accontentiamoci di queste.
                      ti passo il file ecco il link

                      http://www.filedropper.com/prova2

                      se ci sono problemi siamo qui Ciao By Sal (8-D

                      Ciao By Sal (8-)
                      se ti piace la soluzione aiuta a sostenere il Forum con una DONAZIONE a piacere, Grazie

                    • Avatarrobert pyron
                      Partecipante
                        Post totali: 19

                        Grazie By Sal , come avrai notato, per me Excel-Vba ,risulta ancora molto molto nebuloso. Comunque grazie ai tuoi suggerimenti e ai tuoi articoli tipo: https://www.bysal-excel.it/gestione-nomi/ la nebbia ogni tanto si dirada ;-)   Comunque la strada per me è ancora molto lunga e tortuosa …. ma non mi  arrendo.

                        Grazie e buona giornata

                    Visualizzazione 8 filoni di risposte
                    • Devi essere connesso per rispondere a questo topic.