You are here:Home-Domande su Excel VBA e MACRO-With con filtro
With con filtro2020-07-23T02:32:02+02:00

Home Forum Domande su Excel VBA e MACRO With con filtro

Visualizzazione 8 filoni di risposte
  • Autore
    Post
    • Avataralankanz
      Partecipante
        Post totali: 5

        Salve a tutti,

        Vi volevo chiedere una mano su un pezzo di codice che non riesco a completare.
        Cerco di spiegare brevemente e nel modo più esaustivo possibile.

        Il codice è questo

        Private Sub UserForm_Activate()

        Dim Intervallo As Range

        Dim righe, Colonne, R, C

        Dim Matrice()

        Worksheets(“Dati”).Visible = True

        Worksheets(“Dati”).Select

        With Range(“A3”).CurrentRegion

        righe = .Rows.Count

        Colonne = .Columns.Count

        ReDim Matrice(1 To righe, 1 To Colonne)

        For R = 1 To righe

        For C = 1 To Colonne

        Matrice(R, C) = .Cells(R + 1, C)

        Next

        Next

        End With

        With ListBox1

        For R = 1 To righe

        ListBox1.RowSource = (“A3:A” & righe)

        Next

        End With

        Worksheets(“Dati”).Visible = False

        Worksheets(“Inizio”).Select

        End Sub

         

         

        Dovrei aggiungere un filtro sulla colonna “I” che prendesse solo con il contenuto della cella con “No”

         

        Spero che mi possiate aiutare ci sto sbattendo la testa da un po di tempo

         

        Grazie Mille

      • BySalvBySalv
        Amministratore del forum
          Post totali: 759

          Ciao Alankanz,

          1° puoi creare un foglio d’appoggio copiare i dati del filtro nel foglio e popolare il listbox

          2° polpolare il listbox con un ciclo, ma non sapendo quali colonne devono essere aggiunte oltre il filtro con “No” con il codice non so darti una mano, se puoi inserire un file con pochi dati non sensibili, perche dovrei crearmi io un file creare l’userform e caricare il tuo codice cosa che tu già hai.

          per caricare il file vai qui o scegli quello che vuoi https://www.filedropper.com/

          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

        • Avataralankanz
          Partecipante
            Post totali: 5

            Grazie BySalv per la risposta allora il file è questo http://www.filedropper.com/lavoro_1 nella colonna “I” ci sono i Sì e i No da filtrare, praticamente la list box che troverai all’interno dell’elenco form “cerca_pag” mi deve dare l’elenco solo delle righe con il “No” nella colonna “I”

          • BySalvBySalv
            Amministratore del forum
              Post totali: 759

              Ciao alankanz, ecco il file, l’ho reso un poco dinamico, puoi scegliere la colonna ed il valore in modo da essere più flessibile.

              basta inserire la colonna ed il valore esempio “i” oppure “I” per la colonna e “no” oppure “No” quando dai Invio avrai i risultati.

              ho tolto il “Case Sensitive” nel senso che la ricerca la fa non facendo distinzione tra maiuscole e minuscole.

              attenzione che il tuo “Si” e con l’accento “Sì” quindi se non lo inserisci con l’accento non lo trova, fai le prove e vedi se va bene, ho nascosto le colonne delle rate e del residuo da pagare.

              il filtro lo applica direttamente sul range in base alla scelta che fai, controlla la colonna che hai indicato e se il dato corrisponde alla ricerca carica tutto il record trovato e passa al successivo.

              Control+p per aprire il form

              Ciao By Sal (8-D

              http://www.filedropper.com/lavoro_2

               

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

            • Avataralankanz
              Partecipante
                Post totali: 5

                Ti ringrazio molto per l’aiuto. L’ultimo problema è che non riesco a portarmi il valore della riga che ho cercato per poi utilizzarla nella modifica dei dati.

                 

                Ti allego il progetto per intero

                http://www.filedropper.com/icav2

                Passoword: sole

                 

                Sicuramente per te è una cavolata valorizzare la variabile riga con il valore della riga che ho ricercato.

                 

                Spero di essere stato abbastanza esaustivo

                 

                 

                Grazie in anticipo

                 

              • Avataralankanz
                Partecipante
                  Post totali: 5

                  Soluzione trovata ^^’

                   

                  Grazie lo stesso

                • BySalvBySalv
                  Amministratore del forum
                    Post totali: 759

                    Ciao Bravo, bella l’impostazione del tuo file, ho visto che hai fatto le ore piccole, ma hai trovato la soluzione.

                    Non so quale soluzione hai trovato, ma una semplice, potrebbe essere questa.

                    Tenendo conto che stai selezionando una riga del listBox, per sapere quale riga è stata selezionata, basta

                    LB = Listbox1.listindex

                    in LB troverai la riga selezionata della listbox, tieni conto che la numerazione parte da 0zero.

                    devi anche tenere conto che il listbox è frutto di un filtro quindi il numero che ti restituisce in LB non è necessariamente il numero di riga+1 dell’elenco sul foglio.

                    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

                  • Avataralankanz
                    Partecipante
                      Post totali: 5

                      Grazie mille, ci ho messo un pochino perchè io programmo in PHP e MySql, ma con un po di pazienza e i tutorial online si fa tutto, l’unico problema che ho provato a mettere l’header alla listbox, ma mi risultano vuoti se vuoi ti riposto il file con le modifiche!

                    • BySalvBySalv
                      Amministratore del forum
                        Post totali: 759

                        Ciao un sistema facile e senza complicazioni, nella userform, sopra la listbox inserisci una “label” la dimensioni per tutta la larghezza del listbox, e nella label scrivi le intestazioni distanziandole con spazi per farli combaciare con la listbox, ci vuole un poco di pazienza per farli combaciare.

                        un altro più complicato è attivare la “ColumnHeader” ma non avendo il range, ecco perche ti compare bianco,  devi scriverli manualmente indicando anche la colonna, oppure indicando il Rowsource solo la prima riga che contiene le intestazioni.

                        ma il primo metodo è il migliore, in quanto puoi dimensionare i caratteri e colorarli.

                        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

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