Estrapolare dati con i filtri...

Anonimo
2010-11-09T08:56:28+00:00

Ciao a tutti. E' la prima volta che scrivo... Spero possiate aiutarmi perchè sto andando al manicomio.... Ho un file con una miriade di dati. Ho impostato un filtro automatico per avere una prima scrematura... ora, però, ho una necessità importante. C'è una colonna con un numero di 6 cifre. A me servirebbe estrapolare tutte le righe nelle quali quel numero finisce con un determinato numero. Ad esempio, tutte le righe che finisco con 1, o con 2, o con 3, etc.... ho provato a giocare un pò con i filtri ma non ci sono riuscito..... mi potete aiutare?????

Inoltre, volevo chiedervi se è possibile che ogni qualvolta quel numero finisce con un determinato numero, la colonna successiva appaia a chi è affidato. Ad esempio: 803451= Tizio, 8047856=CAIO, etc.... GRAZIEEEEEEEE!!!

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2010-11-10T13:12:06+00:00

Allora, ho provato a fare tutto come dovevo, ma purtroppo non va... ho provato a modificare anche qualcosa, ma non riesco....

In pratica, il mio foglio ha varie colonne. Le 4 variabili (191, etc) sono nella colonna C, il numero che determina l'attribuzione ad uno dei soggetti è nella colonna E e il nome con cui viene associato al numero il nome dovrebbe comparire nella colonna F.

Ho provato a modificare il tuo post precedente in questo modo, ma non ho cavato un ragno dal buco:

<cut>

Come posso fare????

Io ho chiesto in un precedente post:

Prima che posti una soluzione inutile, puoi per favore fare tutti i casi possibili relativi ad A2 B2? Grazie.

Avresti potuto spiegare *prima* che le colonne erano diverse. Chi risponde dedica(gratuitamente) del tempo. Sarebbe molto bello che chi domanda avesse le ideee chiare e spiegasse chiaramente il suo problema, anche per evitare post e post che girano attorno al problema. Prova:

Public Sub m()

    Dim sh As Worksheet

    Dim lRiga As Long

    Dim rng As Range

    Dim c As Range

    Set sh = ThisWorkbook.Worksheets("Foglio1")

    With sh

        lRiga = .Range("E" & .Rows.Count).End(xlUp).Row

        Set rng = .Range("E2:E" & lRiga)

        For Each c In rng

            Select Case c.Offset(0, -2).Value

                Case 196

                    Select Case Right(c.Value, 1)

                        Case 1

                            c.Offset(0, 1).Value = "Tizio"

                        Case 2

                            c.Offset(0, 1).Value = "Caio"

                        Case 3

                            c.Offset(0, 1).Value = "Sempronio"

                        Case 4, 5, 6

                            c.Offset(0, 1).Value = "Mevio"

                        Case 7, 8, 9, 0

                            c.Offset(0, 1).Value = "Bruto"

                        Case Else

                            c.Offset(0, 1).Value = ""

                    End Select

                Case 191

                    Select Case Right(c.Value, 1)

                        Case 1

                            c.Offset(0, 1).Value = "Tizio"

                        Case 2

                            c.Offset(0, 1).Value = "Caio"

                        Case 3

                            c.Offset(0, 1).Value = "Sempronio"

                        Case 4

                            c.Offset(0, 1).Value = "Primo"

                        Case 5, 6, 7, 8, 9

                            c.Offset(0, 1).Value = "Valerio"

                        Case 0

                            c.Offset(0, 1).Value = "Romeo"

                        Case Else

                            c.Offset(0, 1).Value = ""

                    End Select

                Case 163

                    c.Offset(0, 1).Value = "Primo"

                Case 166

                    c.Offset(0, 1).Value = "Mevio"

                Case Else

                    c.Offset(0, 1).Value = ""

            End Select

        Next

    End With

    Set c = Nothing

    Set rng = Nothing

    Set sh = Nothing

End Sub



--

La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

--

Mauro Gamberini - Microsoft© MVP(Excel)

http://www.maurogsc.eu/

La risposta è stata utile?

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2010-11-09T10:21:43+00:00

Ciao e grazie mille per la veloce risposta... ci sto provando, ma proprio non mi riesce.... Ti faccio un esempio banale, per capire concretamente come poter fare... Ho impostato, ad esempio, questi parametri:

504589
507897
5089788
51247
57896
12543
136852
1887982
1354
135679
21590
29765
18976.

 

Ho selezionato tutta la riga e ho scelto che il tipo di cella fosse "testo"... ora, che tipo di ricerca devo fare nel filtro per ottenere, ad esempio, tutti i risultati con il 2 finale?

Non è testo, ma numeri rappresentati come testo, quindi la ricerca fallisce. Se devi trasformare i numeri in testo, puoi:

  • passare ad una ad una le celle aggiungendo un ' (asterisco) davanti ai numeri
  • oppure utilizzare una colonna di appoggio (vedi sotto)

Per utilizzare una colonna d'appoggio che trasforma il valore numerico in testo. Mettiamo tu abbia i numeri in colonna A a partire da A2:

B2: =TESTO(A2;"#")

Adesso potresti anche eliminare la colonna A(sai tu se necessario...). Prima però:

  • seleziona la colonna B
  • Modifica-->Copa
  • Modifica-->Incolla speciale
  • seleziona: Valori

Adesso potresti eliminare la colonna A. Il filtro sulla colonna creata accetterà anche: Personalizza-->Finisce con essendo testo e non più numero.


--

La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

--

Mauro Gamberini - Microsoft© MVP(Excel)

http://www.maurogsc.eu/

La risposta è stata utile?

0 commenti Nessun commento

23 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2010-11-09T11:12:33+00:00

    Ciao e grazie mille per la veloce risposta... ci sto provando, ma proprio non mi riesce.... Ti faccio un esempio banale, per capire concretamente come poter fare... Ho impostato, ad esempio, questi parametri:

    504589
    507897
    5089788
    51247
    57896
    12543
    136852
    1887982
    1354
    135679
    21590
    29765
    18976.

     

    Ho selezionato tutta la riga e ho scelto che il tipo di cella fosse "testo"... ora, che tipo di ricerca devo fare nel filtro per ottenere, ad esempio, tutti i risultati con il 2 finale?

    Non è testo, ma numeri rappresentati come testo, quindi la ricerca fallisce. Se devi trasformare i numeri in testo, puoi:

    • passare ad una ad una le celle aggiungendo un ' (asterisco) davanti ai numeri
    • oppure utilizzare una colonna di appoggio (vedi sotto)

    Per utilizzare una colonna d'appoggio che trasforma il valore numerico in testo. Mettiamo tu abbia i numeri in colonna A a partire da A2:

    B2: =TESTO(A2;"#")

    Adesso potresti anche eliminare la colonna A(sai tu se necessario...). Prima però:

    • seleziona la colonna B
    • Modifica-->Copa
    • Modifica-->Incolla speciale
    • seleziona: Valori

    Adesso potresti eliminare la colonna A. Il filtro sulla colonna creata accetterà anche: Personalizza-->Finisce con essendo testo e non più numero.


    --

    La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

    --

    Mauro Gamberini - Microsoft© MVP(Excel)

    http://www.maurogsc.eu/

    Perfetto! Funziona... E, innanzitutto, GRAZIE MILLEEEEEE!!!! L'unica cosa che ora non mi è chiara, rimanendo ancora sul primo quesito, è come fare a trasferire migliaia di dati dalla colonna A alla colonna B...

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2010-11-09T09:59:26+00:00

    Ciao a tutti. E' la prima volta che scrivo... Spero possiate aiutarmi perchè sto andando al manicomio.... Ho un file con una miriade di dati. Ho impostato un filtro automatico per avere una prima scrematura... ora, però, ho una necessità importante. C'è una colonna con un numero di 6 cifre. A me servirebbe estrapolare tutte le righe nelle quali quel numero finisce con un determinato numero. Ad esempio, tutte le righe che finisco con 1, o con 2, o con 3, etc.... ho provato a giocare un pò con i filtri ma non ci sono riuscito..... mi potete aiutare?????

    Inoltre, volevo chiedervi se è possibile che ogni qualvolta quel numero finisce con un determinato numero, la colonna successiva appaia a chi è affidato. Ad esempio: 803451= Tizio, 8047856=CAIO, etc.... GRAZIEEEEEEEE!!!

    Non credo tu possa filtrare parte di un numero, se non trasformando il numero in testo. Ho risposto alla stessa domanda qui:http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/thread/7cdb5d49-9e02-43ea-b68e-d6a9913752aa . L'altra cosa è fattibile. Mettiamo tu abbia i numeri in colonna A a partire da A2.

    B2: =INDICE({"Tizio";"Caio";"Sempronio"};CONFRONTA(INT(DESTRA(A2;1));{1;2;3};0))

    Aggiungi altri elementi alla matrice(se necessari) ed espandi la formula verso il basso.


    --

    La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

    --

    Mauro Gamberini - Microsoft© MVP(Excel)

    http://www.maurogsc.eu/

    Ciao e grazie mille per la veloce risposta... ci sto provando, ma proprio non mi riesce.... Ti faccio un esempio banale, per capire concretamente come poter fare... Ho impostato, ad esempio, questi parametri:

    504589
    507897
    5089788
    51247
    57896
    12543
    136852
    1887982
    1354
    135679
    21590
    29765
    18976.

    Ho selezionato tutta la riga e ho scelto che il tipo di cella fosse "testo"... ora, che tipo di ricerca devo fare nel filtro per ottenere, ad esempio, tutti i risultati con il 2 finale?

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2010-11-09T09:24:27+00:00

    Ciao a tutti. E' la prima volta che scrivo... Spero possiate aiutarmi perchè sto andando al manicomio.... Ho un file con una miriade di dati. Ho impostato un filtro automatico per avere una prima scrematura... ora, però, ho una necessità importante. C'è una colonna con un numero di 6 cifre. A me servirebbe estrapolare tutte le righe nelle quali quel numero finisce con un determinato numero. Ad esempio, tutte le righe che finisco con 1, o con 2, o con 3, etc.... ho provato a giocare un pò con i filtri ma non ci sono riuscito..... mi potete aiutare?????

    Inoltre, volevo chiedervi se è possibile che ogni qualvolta quel numero finisce con un determinato numero, la colonna successiva appaia a chi è affidato. Ad esempio: 803451= Tizio, 8047856=CAIO, etc.... GRAZIEEEEEEEE!!!

    Non credo tu possa filtrare parte di un numero, se non trasformando il numero in testo. Ho risposto alla stessa domanda qui:http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/thread/7cdb5d49-9e02-43ea-b68e-d6a9913752aa . L'altra cosa è fattibile. Mettiamo tu abbia i numeri in colonna A a partire da A2.

    B2: =INDICE({"Tizio";"Caio";"Sempronio"};CONFRONTA(INT(DESTRA(A2;1));{1;2;3};0))

    Aggiungi altri elementi alla matrice(se necessari) ed espandi la formula verso il basso.


    --

    La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

    --

    Mauro Gamberini - Microsoft© MVP(Excel)

    http://www.maurogsc.eu/

    La risposta è stata utile?

    0 commenti Nessun commento