Condividi tramite

Excel formula per estrarre righe in base ai dati presenti in una colonna

Anonimo
2023-07-28T12:27:50+00:00

Ciao,

vorrei estrarre le righe di un foglio Excel in un altro foglio tranne che per quelle che in una colonna hanno un determinato valore.

Chiarisco meglio: nel Foglio1 ho:

Col.A Col.B Col.C

Azienda 1 Bianchi Presente

Azienda 1 Rossi Assente

Azienda 2 Verdi Presente

Azienda 2 Gialli Presente

Azienda 3 Blu Assente

Ora, nel secondo foglio dovrei estrarre solo le aziende e i nominativi della colonna A per cui non ci sia anche un solo nominativo della stessa azienda che in colonna C abbia "Assente".

Il secondo foglio deve comprendere quindi solo le righe dell'Azienda 2.

Se qualcuno può aiutarmi con una formula lo ringrazio in anticipo. Riesco a farlo con una query con una Select Not in all'interno del foglio Excel, ma sono diverse migliaia di record e risulta molto lenta, forse con una formula diventa più veloce.

Grazie ancora, Max.

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
2023-07-28T13:03:47+00:00

Ciao

Sono Ajibola, un consulente indipendente qui e un utente Microsoft come te. Non lavoro per Microsoft.

È possibile utilizzare la formula seguente per estrarre le righe di un foglio di Excel in un altro foglio, ad eccezione di quelle che hanno un determinato valore in una colonna:

=SE.ERRORE(INDICE(Foglio1! A:A,SMALL(IF(Foglio1!$C:$C<>"Assenti",RIGA(Foglio1!$C:$C)),RIGA(1:1))-1),"")

Ecco come funziona:

  • La funzione 'INDEX' restituisce il valore di una cella in una riga e colonna specificate di un foglio di lavoro.
  • La funzione 'SMALL' restituisce il k-esimo valore più piccolo in un set di dati.
  • La funzione 'SE' restituisce un valore se una condizione specificata è TRUE e un altro valore se è FALSE.
  • La funzione 'ROW' restituisce il numero di riga di un riferimento.
  • La funzione 'IFERROR' restituisce un valore specificato se una formula restituisce un errore; In caso contrario, restituisce il risultato della formula.

Per utilizzare questa formula, è necessario sostituire "Foglio1" con il nome del foglio e "Assente" con il valore che si desidera escludere. È quindi possibile copiare questa formula per estrarre tutte le righe che soddisfano i criteri. Spero che questo aiuti!

È possibile ottenere questo risultato usando una combinazione di formule e filtri in Excel. Ecco una guida passo-passo su come farlo:

Supponendo che i dati si trovino nel Foglio1 con intestazioni nella prima riga e si desideri estrarre le righe in un nuovo foglio denominato Foglio2:

**Passaggio 1: aggiungi una colonna di supporto** In Foglio1 aggiungere una nuova colonna (ad esempio nella colonna D) e immettere la formula seguente nella prima cella (D2), quindi trascinarla verso il basso per riempire l'intera colonna:

=SE(COUNTIFS(A:A; A2; C:C; "assente")=0; "Include", "Escludi")

Questa formula controlla se sono presenti occorrenze di "Assenti" nella colonna C per lo stesso nome di società nella colonna A. Se non ce ne sono, contrassegna la riga come "Include", altrimenti la contrassegna come "Escludi".

**Passaggio 2: filtrare i dati** Ora, applica un filtro ai dati nel Foglio1:

  • Clicca sul pulsante filtro nell'intestazione della colonna D (la colonna helper che hai appena creato).
  • Nel menu a discesa del filtro, deseleziona l'opzione "Escludi", in modo che siano visibili solo le righe "Include".

**Passaggio 3: copia i dati filtrati nel Foglio2** Con il filtro applicato, vedrai solo le righe con "Include" nella colonna helper (colonna D). Ora, seleziona i dati visibili (escluse le intestazioni) e copiali.

**Passaggio 4: incollare i dati nel Foglio2** Passare al foglio 2 e incollare i dati copiati. Ora dovresti avere solo le righe per le quali non esiste nemmeno un singolo valore "Assenti" nella colonna C per la stessa società nella colonna A.

**Passaggio 5: rimuovere il filtro** Dopo aver incollato i dati nel Foglio2, è possibile rimuovere il filtro dal Foglio1 per visualizzare nuovamente i dati completi.

Nota: se i dati vengono modificati frequentemente, potrebbe essere necessario aggiornare il filtro nel foglio 1 ogni volta che vengono apportate modifiche ai dati. In alternativa, è possibile prendere in considerazione l'utilizzo di tabelle di Excel (CTRL+T) per regolare automaticamente l'intervallo di filtri quando vengono aggiunti nuovi dati.

Con questo approccio, non è necessario utilizzare formule o macro complesse e fornisce un modo semplice ed efficace per estrarre le righe desiderate in un altro foglio in base ai criteri.

Se hai ulteriori domande o hai bisogno di ulteriore assistenza, non esitare a chiedere. Sono qui per aiutarti!

Se la risposta è stata utile, non dimenticare di votare o accettarla come risposta, grazie

Cordiali saluti Ajibola

Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

La risposta è stata utile?

3 persone hanno trovato utile questa risposta.
0 commenti Nessun commento

4 risposte aggiuntive

Ordina per: Più utili
  1. Gianfranco55 25,190 Punti di reputazione Moderatore volontario
    2023-07-28T14:25:27+00:00

    ciao

    se hai versioni superiori al 2007

    ti consiglierei al posto di PICCOLO(Se() che deve essere confermato matriciale

    utilizzare

    =SE.ERRORE(INDICE(Foglio1!A$1:A$1000;AGGREGA(15;6;RIF.RIGA($1:$1000)/(Foglio1!$C$1:$C$1000="Presente");RIF.RIGA($A1)));"")
    

    da trascinare a destra e in basso

    se poi avessi il 365 o il 2021

    ti consiglio

    =FILTRO(Foglio1!A1:C1000;Foglio1!C1:C1000="Presente";"")
    

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-07-28T14:00:28+00:00

    Risolto con la tua soluzione, grazie!

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-07-28T13:31:21+00:00

    Se hai ulteriori domande o hai bisogno di ulteriore assistenza, non esitare a chiedere. Sono qui per aiutarti!

    Se la risposta è stata utile, non dimenticare di votare o accettarla come risposta, grazie

    Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2023-07-28T13:23:05+00:00

    Ciao Ajibola, ora provo, grazie !

    La risposta è stata utile?

    0 commenti Nessun commento