Estrai valori unici

Anonimo
2023-07-24T09:59:09+00:00

Ho una tabella excel di 5 colonne: matricola, nominativo, reparto, data , errore .

Poiché per lo stesso nominativo ( e/o matricola) può succedere di avere più errori nella stessa data, è quindi più righe nella tabella, vorrei estrarre i dati in modo da avere una tabella che mi lasciasse un singolo errore per data ( eliminando gli altri errori nella stessa data) .Ho provato con il filtro avanzato e con elimina duplicato senza successo. Potete aiutarmi grazie.

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-24T12:52:58+00:00

Grazie Norman,

il mio problema era molto più semplice, alla fine ho risolto con " elimina duplicati" della scheda dati, nell'utilizzare questa funzione sbagliavo in quanto non selezionavo le colonne giuste. Deselezionando solo la colonna errore e lasciano le altre ho risolto.

Buona giornata Rocco.

La risposta è stata utile?

0 commenti Nessun commento

5 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2023-07-24T12:50:29+00:00

    Grazie per le pronte risposte.

    Alla fine ho risolto con " elimina duplicati" della scheda dati, nell'utilizzare questa funzione sbagliavo in quanto non selezionavo le colonne giuste. Deselezionando solo la colonna errore e lasciano le altre ho risolto.

    Grazie a tutti comunque.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-07-24T12:13:50+00:00

    Ciao Rocco,

    Temo fortemente di aver interpretato male la tua richiesta 😒

    Quindi, per estrarre solo il primo errore per ogni matricola per data, una possibilità sarebbe quella di sfruttare la seguente UDF (funzione utente) come segue:

    • Alt+F11 per aprire l'editor di VBA
    • Alt+IM per inserire un nuovo modulo di codice
    • Nel nuovo modulo vuoto, incolla il seguente codice:

    '========>>

    Option Explicit

    '-------->>

    Public Function Unica_Per_Data(oTabella As Range) As Variant

    Dim arrIn As Variant, arrOut() As Variant 
    
    Dim UB As Long, UB2 As Long, iCtr As Long 
    
    Dim i As Long, j As Long, k As Long 
    
    Dim bMatch As Boolean 
    
    arrIn = oTabella.Value2 
    
    UB = UBound(arrIn) 
    
    UB2 = UBound(arrIn, 2) 
    
    For i = 1 To UB 
    
        bMatch = False 
    
        For j = 1 To iCtr 
    
            bMatch = arrIn(i, 1) = arrOut(1, j) And arrIn(i, 4) = arrOut(4, j) 
    
            If bMatch Then Exit For 
    
        Next j 
    
        If Not bMatch Then 
    
            iCtr = iCtr + 1 
    
            ReDim Preserve arrOut(1 To UB2, 1 To iCtr) 
    
            For k = 1 To UB2 
    
                arrOut(k, iCtr) = arrIn(i, k) 
    
            Next k 
    
        End If 
    
    Next i 
    
    Unica\_Per\_Data = Application.Transpose(arrOut) 
    

    End Function

    '<<========

    • Alt+Q per chiudere l'editor di VBA e tornare a Excel.
    • Salva il file con l'estensione xlsm

    Questa funzione viene immessa in una singola cella e può essere utilizzata come una funzione nativa di Excel. Ad esempio, immettendo la formula

      **=Unica\_Per\_Dati(A2:E21)** 
    

    nella cella G2 restituisce i seguenti dati:

    Immagine

    Potresti scaricare il mio file di prova Rocco20230724.xlsm

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-07-24T10:30:43+00:00

    Ciao Rocco,

    Ho una tabella excel di 5 colonne: matricola, nominativo, reparto, data , errore .

    Poiché per lo stesso nominativo ( e/o matricola) può succedere di avere più errori nella stessa data, è quindi più righe nella tabella, vorrei estrarre i dati in modo da avere una tabella che mi lasciasse un singolo errore per data ( eliminando gli altri errori nella stessa data) .Ho provato con il filtro avanzato e con elimina duplicato senza successo. Potete aiutarmi grazie.

    Con riferimento all'immagine seguente, nella cella G2 immetti la formula:

      **=UNICI(A2:A21)**
    

    Nella cella H2 immetti la formula

      **=CERCA.X($G$2#;$A$1:$A$21;B1:B21;0)**  
    

    Trascina questa formula a destra sino alla colonna K e in basso:

    [![](https://learn-attachment.microsoft.com/api/attachments/e3e0448a-b2bc-443d-a1c8-ec4e027f0eae?platform=QnA"https://learn-attachment.microsoft.com/api/attachments/50510cce-38d1-4af6-92c9-1d96623569ff?platform=QnA" title="filestore.community.support.microsoft.com" rel="ugc nofollow">Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Gianfranco55 25,190 Punti di reputazione Moderatore volontario
    2023-07-24T10:17:06+00:00

    ciao

    se gentilmente copiassi parte della tua tabella

    non mettendo dati sensibili e la allegassi potremo

    vedere dove intervenire.

    teoricamente si dovrebbe usare la matricola.

    chiaro che se hai errore sulla matricola l'unicità salta.

    se ci sici la versione che hai di excel

    saremo ancora più facilitati

    La risposta è stata utile?

    0 commenti Nessun commento