Risultati da 1 a 13 di 13

Discussione: Estrazione dati da tabella con duplicati



  1. #1

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2808
    Versione Office
    Excel 2013
    Likes ricevuti
    1020
    Likes dati
    979

    Estrazione dati da tabella con duplicati

    Un saluto a tutto il Forum.
    Analizzando una discussione su l'estrazione dati da un database con un criterio, non riesco a trovare soluzione a questo quesito (puramente a scopo ludico/didattico).
    Ho un database con questi campi:
    ID_ORDINE - DATA - CLIENTE - PRODOTTO - QUANTITA'


    dovrei estrarre una tabella contenente


    DATA - CLIENTE - PRODOTTO - QUANTITA'


    ma senza duplicati di cliente/data/prodotto. Sono riuscito a estrarre i duplicati filtrando singolarmente i campi (o cliente, o Data ecc) ma non tutti insieme.
    Esempio:
    se un cliente lo stesso giorno richiede un'altra quantità dello stesso prodotto deve figurare una sola volta con la somma delle quantità.
    Allego un file di esempio con evidenziati i record duplicati.
    Vorrei evitare la colonna d'appoggio contenente i campi concatenati.


    ATTENZIONE: Allego la soluzione con VBA (per vedere il risultato), ma bisogna farlo senza (NO VBAisti).:188:

    Piccolo aneddoto: come diceva un mio vecchio professore "Oggi interroghiamo gli Juventini, mancini, con l'orologio a destra" noi pensavamo fosse razzista, a fine corso abbiamo scoperto che lui era Juventino, mancino con l'orologio a destra. Ergo W i VBAisti:285:
    File Allegati File Allegati

  2. #2
    L'avatar di Bolz1
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Padova
    Età
    41
    Messaggi
    117
    Versione Office
    '11 e 16 MAC
    Likes ricevuti
    7
    Likes dati
    1
    Se tu stesso fai una domanda su una formula, direi che io l'unica cosa che posso fare è aspettare la soluzione che studierò :167: :167:
    "Se tu segui tua stella non puoi fallire a glorioso porto" (Dante, Inferno - XV)

  3. #3
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Ciao a tutti
    @Rubik non so se ho capito bene la tua domanda
    prova questa formula matriciale in J3 e copia a destra fino al campo del prodotto e poi in basso


    =INDICE(B$3:B$52;PICCOLO(SE(FREQUENZA(SE($C$3:$C$52<>"";SE($B$3:$B$52>=$G$2;SE($B$3:$B$52<=$H$2;CONFRONTA($B$3:$B$52&$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0))));RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1);RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1);RIGHE(J$3:$K3)))

    PS non ho capito che tipo di calcolo vuoi per la quatità?
    fammi sapere!!
    ciao

  4. I seguenti 4 utenti hanno dato un "Like" a Gerardo Zuccalà per questo post:


  5. #4
    L'avatar di Bolz1
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Padova
    Età
    41
    Messaggi
    117
    Versione Office
    '11 e 16 MAC
    Likes ricevuti
    7
    Likes dati
    1
    gerardo credo voglia la somma dei prodotti...se topolino il 01.02.16 ha ordinato 24 ProdottiA e poi di nuovo altri 13 ProdottoA, la riga dovrebbe venire

    01.02.16 - Topolino - ProdottoA - 37
    "Se tu segui tua stella non puoi fallire a glorioso porto" (Dante, Inferno - XV)

  6. #5
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    ok allora per la quantità va bene un semplice SOMMA.PIU.SE

    =SE(L3="";"";SOMMA.PIÙ.SE($E$3:$E$52;$C$3:$C$52;K3;$D$3:$D$52;L3;$B$3:$B$52;J3))

    vedi file completo in allegato
    File Allegati File Allegati

  7. #6

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2808
    Versione Office
    Excel 2013
    Likes ricevuti
    1020
    Likes dati
    979
    Esattamente quello che cercavo. Non riuscivo a reperire il rigo dalla funzione INDICE (mi mancava il passaggio della formula FREQUENZA con i vari SE(...SE(...SE(...). Sempre di pìù ti dimostri un Guru delle formule Matriciali:255:

    Sempre a scopo ludico/didattico ecco la stessa con AGGREGA

    =SE.ERRORE(INDICE(B$3:B$52;AGGREGA(15;6;(RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1)/FREQUENZA(SE($C$3:$C$52<>"";SE($B$3:$B$52>=$G$2;SE($B$3:$B$52<=$H$2;CONFRONTA($B$3:$B$52&$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0))));RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1);RIGHE(J$3:$K3)));"")

    ma non si può fare a meno di CTRL + SHIFT + ENTER anche con questa funzione a causa di FREQUENZA che serve matriciale

  8. #7
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Nooo nooo i guru sono altri, al limite Esperto:230:

    comunque questa formula non è niente di difficile se hai visto EP64 vedrai come estrarre una lista unica, però in questo caso era un po più difficile perchè non dovevamo creare una lista unica di un solo campo ma abbiamo estratto un Records unico e per fare questo ho messo il (&)

    Praticamente in questo pezzettino di formula qui sotto ho creato la matrice dati concatenando i campi e di conseguenza e come se avessi una sola stringa che se duplicata verrà rimossa

    CONFRONTA($B$3:$B$52
    &$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0))))

    PS Con l'AGGREGA è la stessa cosa appena ho un po di tempo ci provo
    Ciao

  9. #8
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    55
    Messaggi
    1664
    Versione Office
    2010 PC
    Likes ricevuti
    892
    Likes dati
    184
    ciao Gerardo,
    a questo punto, il difficile è fatto, per come ho capito io, dovrebbe bastare una somma.se condizionata da tre criteri, in M3:
    =MATR.SOMMA.PRODOTTO(($B$3:$B$52=J3)*($C$3:$C$52=K3)*($D$3:$D$52=L3)*$E$3:$E$52)
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  10. I seguenti 3 utenti hanno dato un "Like" a ninai per questo post:


  11. #9
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    ciao Gerardo,
    a questo punto, il difficile è fatto, per come ho capito io, dovrebbe bastare una somma.se condizionata da tre criteri, in M3:
    =MATR.SOMMA.PRODOTTO(($B$3:$B$52=J3)*($C$3:$C$52=K3)*($D$3:$D$52=L3)*$E$3:$E$52)
    @ninai sentivo che a breve avresti partecipato a questa discussione:98:
    ottimo il MATR.SOMMA.PRODOTTO ma credo che ti sei perso la formula che ho fatto nel post#5 con un semplice SOMMA.PIU.SE che restituisce lo stesso risultato solo che è un po più leggera perchè lavora solo con i VERO e i FALSO senza trasformarli in 1 e 0
    ninai ti ricordo che un "mi piace" dei tuoi vale doppio...
    ciao

  12. I seguenti utenti hanno dato un "Like"


  13. #10

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2808
    Versione Office
    Excel 2013
    Likes ricevuti
    1020
    Likes dati
    979
    Citazione Originariamente Scritto da Gerardo Zuccalà Visualizza Messaggio
    Nooo nooo i guru sono altri, al limite Esperto:230:
    Troppo modesto:43:

  14. #11
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    55
    Messaggi
    1664
    Versione Office
    2010 PC
    Likes ricevuti
    892
    Likes dati
    184
    Citazione Originariamente Scritto da Gerardo Zuccalà Visualizza Messaggio
    @ninai sentivo che a breve avresti partecipato a questa discussione:98:
    ottimo il MATR.SOMMA.PRODOTTO ma credo che ti sei perso la formula che ho fatto nel post#5 con un semplice SOMMA.PIU.SE che restituisce lo stesso risultato solo che è un po più leggera perchè lavora solo con i VERO e i FALSO senza trasformarli in 1 e 0
    ninai ti ricordo che un "mi piace" dei tuoi vale doppio...
    ciao
    hai ragione su tutto, ma io ho un "amore" particolare per la MATR.SOMMA.PRODOTTO() , un po come il primo amore, anche se meno "efficiente" ti lascia ricordi più intensi :188::188:.

    Una mia Antipatia personale ce l'ho con FREQUENZA() (credo che sia perchè non l'ho mai capita a fondo).
    In questo caso, a meno che non mi sfugge qualcosa, si potrebbe evitarla con la formula iniziale :
    =INDICE(B$3:B$52;PICCOLO(SE($C$3:$C$52<>"";SE($B$3:$B$52>=$G$2;SE($B$3:$B$52<=$H$2;SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;CONFRONTA($B$3:$B$52&$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0);0));RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;"")))); RIGHE($J$3:J3)))

    edit
    forse pure un SE() è evitabile:
    =INDICE(B$3:B$52;PICCOLO(SE($B$3:$B$52>=$G$2;SE($B$3:$B$52<=$H$2;SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;CONFRONTA($B$3:$B$52&$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0);0));RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;""))); RIGHE($J$3:J3)))


    sono un risparmiatore di tastiera :188:
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  15. I seguenti 4 utenti hanno dato un "Like" a ninai per questo post:


  16. #12
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    hai ragione su tutto, ma io ho un "amore" particolare per la MATR.SOMMA.PRODOTTO() , un po come il primo amore, anche se meno "efficiente" ti lascia ricordi più intensi :188::188:.

    Una mia Antipatia personale ce l'ho con FREQUENZA() (credo che sia perchè non l'ho mai capita a fondo).
    In questo caso, a meno che non mi sfugge qualcosa, si potrebbe evitarla con la formula iniziale :
    =INDICE(B$3:B$52;PICCOLO(SE($C$3:$C$52<>"";SE($B$3:$B$52>=$G$2;SE($B$3:$B$52<=$H$2;SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;CONFRONTA($B$3:$B$52&$C$3:$C$52&$D$3:$D$52;$B$3:$B$52&$C$3:$C$52&$D$3:$D$52;0);0));RIF.RIGA($B$3:$B$52)-RIF.RIGA($B$3)+1;"")))); RIGHE($J$3:J3)))
    Ninai credo che il FREQUENZA una volta studiata bene ti da grande soddisfazioni, però ovviamente ognuno di noi famigliarizza meglio con la propria formula..... oltretutto si racconta tra esperti che il FREQUENZA è molto veloce e sicuramente ritorna utile in grossi data base...
    un saluto a tutti

  17. #13

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2808
    Versione Office
    Excel 2013
    Likes ricevuti
    1020
    Likes dati
    979
    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    Una mia Antipatia personale ce l'ho con FREQUENZA() (credo che sia perchè non l'ho mai capita a fondo).
    Concordo con te, ma ora non si può più "evitare" bisogna "affrontarla"

Discussioni Simili

  1. [Risolto] estrazione dati da pdf a excel e tabella per colonne.
    Di mb63 nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 02/02/17, 21:55
  2. Estrazione dati multipli da singola tabella
    Di mrgiaco nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 24/10/16, 10:10
  3. Estrazione condizionata dei dati da una tabella
    Di GioPL nel forum Domande su Excel VBA e MACRO
    Risposte: 4
    Ultimo Messaggio: 15/07/16, 20:53
  4. Estrazione dati da tabella
    Di alfrimpa nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 19/02/16, 22:14
  5. Estrazione dati da tabella excell 2003
    Di 61franco nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 15/01/16, 13:52

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
  •