Condividi:        

[excel] unire valori elenco ed eliminare nomi extra

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[excel] unire valori elenco ed eliminare nomi extra

Postdi Helio » 20/10/17 17:57

Salve a tutti,

ho cercato sul forum ma non ho trovato niente di simile.

ho questo elenco:

Immagine

e vorrei ottenere dal primo elenco il risultato del secondo.

si può fare senza dover necessariamente sviluppare tutto a mano?

grazie a tutti
Helio
Newbie
 
Post: 8
Iscritto il: 20/10/17 17:20

Sponsor
 

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Anthony47 » 20/10/17 19:38

Ciao Helio, benvenuto nel forum.
Ti chiederei di allegare il file su cui lavorare, non la sola immagine; inoltre cerca di spiegare quali sono le regole alla base dei risultati che vuoi ottenere.
Questo ci consentira' di concentrarci sul capire come risolvere il problema non sul cercare di capire quale e' il problema.

Per le istruzioni su come allegare un file:
viewtopic.php?f=26&t=103893&p=605487#p605487

Ciao, ti aspettiamo....
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Helio » 23/10/17 17:36

Grazie della risposta.

praticamente dovrei fare una pulizia dei nomi dell'elenco, mettendo le X a più destinazioni ma su una sola riga e con un solo nome, come nell'immagine.

http://www.filedropper.com/nuovofogliod ... softexcel4

un programma del tipo: se tra due righe nome cognome e anno di nascita sono uguali, portare sopra la X, cancellando la riga contenente il doppione.
Helio
Newbie
 
Post: 8
Iscritto il: 20/10/17 17:20

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Marius44 » 23/10/17 20:37

Ciao
come sai in questo sito (come in altri) non è consentito fornire una soluzione pronta all'uso.
Ho scaricato il tuo file e posso dirti che la cosa è fattibilissima con una macro.
Cosa deve fare la macro:
- copiare i dati delle colonne B:G nella cella M2
- eliminare i doppioni in questo nuovo intervallo
- con un ciclo (triplo di cui uno ripetuto due volte) riportare le "X" al punto giusto.
dico un ciclo triplo perchè:
a) spazzola (ciclo A) tutte le righe del nuovo intervallo e assume i dati (altro ciclo - ciclo B) di ciascuna riga
b) confronta dette righe con quelle del precedente elenco (altro ciclo uguale a quello di prima - ciclo B ma su altro intervallo) e
c) quando le variabili assunte sono uguali (riga nuovo elenco = riga vecchio elenco) riporta la "X" di ogni colonna (altro ciclo C)
Sembra difficile ma se ci ragioni sopra non lo è affatto.

Prova e se hai difficoltà non esitare a chiedere.
Ciao,
Mario
Marius44
Utente Senior
 
Post: 655
Iscritto il: 07/09/15 22:00

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Anthony47 » 23/10/17 21:15

Fortunatamente le nostre regole sono piu' generose di quelle dettate da marius :lol: :lol: e si puo' fare anche senza ricorrere alle macro.

Puoi creare quanto chiedi con questa procedura
A. Elimini le celle unite sulla Nascita e scrivi nelle intestazioni Giorno /Mese Anno
B. Usando il "filtro avanzato" crei a partire da N1 un elenco univoco di Cognome /Nome /Giorno /Mese /Anno /Sesso
C. In T1 e adiacenti copi l'elenco delle citta', come compaiono nell'elenco principale

Poi in T2 inserisci questa formula:
Codice: Seleziona tutto
=SE(CONTA.PIÙ.SE($B:$B;$N2;$C:$C;$O2;$D:$D;$P2;$E:$E;$Q2;$F:$F;$R2;H:H;"X")>0;"X";"")
Copia T2 verso destra e poi la prima riga di formule verso il basso, per quante righe di nominativi presenti in elenco; se l'elenco invece puo' allungarsi allora puoi inserire piu' righe di formule, in modo da coprire non solo il bisogno di oggi ma anche quello di domani.

Volendo, puoi registrare una macro mentre esegui la fase B e poi la associ a un pulsante sul foglio; in questo modo ti bastera' premere questo pulsante per ricreare successivamente l'elenco univoco dei nominativi. Ovviamente questo ha senso se pensi che l'elenco cambi spesso.

Per le istruzioni e i primi suggerimenti su come registrare una macro:
viewtopic.php?f=26&t=103893&p=622593#p622593

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Marius44 » 23/10/17 21:26

Salve a tutti
Col permesso di Anthony (ciao) faccio il "buono" anch'io e ti posto la macro
Codice: Seleziona tutto
Option Explicit

Sub Elenco_Univoco()
Dim ur As Long, i  As Long, w As Long, j As Long, k As Long
Dim A As String, B As String
    ur = Cells(Rows.Count, 2).End(xlUp).Row
    Range(Cells(2, 2), Cells(ur, 7)).Copy
    Range("M2").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveSheet.Range("$M$2:$R$" & ur).RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6) _
        , Header:=xlYes

    For i = 2 To ur
        For w = 13 To 18
            A = A & Cells(i, w)
        Next w
        If A = "" Then Exit Sub
        For j = 2 To ur
            For w = 2 To 7
                B = B & Cells(j, w)
            Next w
            If A = B Then
                For k = 8 To 11
                    If Cells(j, k) = "X" Then Cells(i, k + 11) = "X"
                Next k
            End If
            B = ""
        Next j
        A = ""
    Next i
End Sub

Associala ad un pulsante ed il ... gioco è fatto.
Ciao,
Mario
Marius44
Utente Senior
 
Post: 655
Iscritto il: 07/09/15 22:00

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Anthony47 » 23/10/17 21:35

Due soluzioni sono meglio di una, eh he...
Viva i troppo buoni
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Helio » 24/10/17 15:30

grazie mille per le risposte...ho usato la soluzione 1 per comodità, non avendo mai usato una macro, ed ha funzionato...solo che non ci capisco proprio niente nella stringa.

a volerla utilizzare anche in altri fogli, mi spiegate il funzionamento, se possibile?

grazie ancora già così avete fatto fin troppo.
Helio
Newbie
 
Post: 8
Iscritto il: 20/10/17 17:20

Re: [excel] unire valori elenco ed eliminare nomi extra

Postdi Anthony47 » 24/10/17 20:33

La formula usa la funzione Conta.Piu.Se; puoi leggerne la sintassi sull'help on line di Excel.
Essenzialmente conta quante volte un insieme di criteri viene rispettato.

La formula conta quante volte
-il cognome in colonna B corrisponde a quello di N2
-il nome in colonna C corrisponde a quello in O2
-idem per giorno, mese, anno di nascita
-la colonna della prima sede contiene una X
Se la conta e' >0 viene messa la X; altrimenti la cella della formula viene lasciata vuota

L'uso del simbolo $ consente di trasformare alcune parti in "indirizzi assoluti" (es la colonna $B:$B), altre parti in "indirizzi misti" (es il valore $N2), mentre qualcuna rimane "indirizzo relativo" (es la colonna H:H); questo consente di copiare la formula verso destra e verso il basso mantenendone la logica. Per dettagli consultare l'help on line di Excel alle voci
- "Panoramica delle formule", in particolare la sezione "Differenza tra riferimenti relativi, assoluti e misti"
- "Spostare o copiare una formula"

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[excel] unire valori elenco ed eliminare nomi extra":


Chi c’è in linea

Visitano il forum: Nessuno e 46 ospiti