Stergere celule cu valori identice

Ce este nou in Microsoft Excel 2010?
Informatii despre cum se utilizeaza Microsoft Excel 2010
Calcule, Formule, Functii, Tabele pivot, Analiza datelor, etc
Dan T
Mesaje:3
Membru din:Sâm Ian 09, 2021 2:23 pm
Stergere celule cu valori identice

Mesaj de Dan T » Sâm Ian 09, 2021 2:33 pm

Buna ziua,
Am cautat solutie dar nu am gasit...
Am un sheet cu peste 125.000 celule, peste 11.000 cu valori si peste 2.000 valori identice. Text si cifre. Imposibil de cautat si sters cate una. Sunt 2084 valori identice.
Trebuie sa sterg duplicatele pe RAND, nu pe coloana.
Multumesc

IPP
Moderator
Moderator
Mesaje:4198
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Stergere celule cu valori identice

Mesaj de IPP » Sâm Ian 09, 2021 5:08 pm

Buna ziua

Daca am inteles bine, adica ce duplicate se gasesc la nivelul fiecarui rand in parte, probabil se poate face un macro in acest sens.
Nu mi-e clar, in caz de gasire duplicat, care valoare va trebui sa ramana si care sa fie stearsa (prima aparitie sau ultima?)

Va fi vorba despre duplicate (adica maxim 2 aparitii pentru acelasi item sau mai multe)?
Informatia este cat de cat "compacta" adica intr-o lista/table fara celule goale sau imprastiata aleatoriu prin foaie? Daca da, mai aveti si alta informatie pe randurile respective care se duca la prelucrari eronate in cazul in care macro va cauta pe intregul rand al excel?

Incercati sa atasati un fisier relevant in acest sens (ca structura si informatie), insa fara informatii confidentiale

IP

IPP
Moderator
Moderator
Mesaje:4198
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Stergere celule cu valori identice

Mesaj de IPP » Sâm Ian 09, 2021 5:59 pm

Buna ziua

Atasat gasiti o propunere folosind macro

Obiectiv: stergerea, la nivel de fiecare rand in parte a informatie duplicate (de fapt a informatiei care apare mai mult de o data) cu ramanerea primei aparitii (cea mai din stanga a valorilor respective)

Propunerea se bazeaza strict pe structura informatiei din fisierul atasat si are titlu de exemplificare.
Mai ales daca nu ati mai lucrat cu macro folositi o copie a fisierului original, editati codul dupa necesitati si testati acolo.

In exemplul atasat, Sheet1, am dat (manual) fond colorat duplicatelor astfel incat sa se poata vedea mai bine rezultatele dupa rularea macro.

Am folosit urmatorul cod:

Cod: Selectaţi tot

Sub DelLastDuplicate()

'IPP - 09.01.2021

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Range("H10").Select

Do Until ActiveCell.Address = Cells(3, 1).Address
 If ActiveCell.Column = 1 Then ActiveCell.Offset(-1, 8).Select
 
 If ActiveCell <> "" Then
  If Application.WorksheetFunction.CountIf(ActiveCell.EntireRow, ActiveCell) > 1 Then
   ActiveCell.ClearContents
  End If
 End If
 
 ActiveCell.Offset(0, -1).Select
Loop
 
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

End Sub
Acesta:
-selecteaza ultima celula cu informatie, in acest caz H10 (se poate edita codul in consecinta)
-daca celula contine informatie, face verificarea ei la nivelul intregului rand excel si
-daca este o valoare duplicat o sterge, daca nu, selectia se muta spre stanga (si ulterior pe un rand mai sus) si reia procesul, pana cand celula activa ajunge sa fie A3 (de asemenea se poate edita codul in consecinta)

Pentru testare: deschideti fisierul atasat, activati macro/continutul, selectati foaia Sheet1 si rulati macro (View, Macros, View Macros, selectie din lista, Run sau Alt+F8 pentru a deschide lista cu macro...)

IP
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

Dan T
Mesaje:3
Membru din:Sâm Ian 09, 2021 2:23 pm

Re: Stergere celule cu valori identice

Mesaj de Dan T » Sâm Ian 09, 2021 11:40 pm

Buna seara,
Atasat un model.
Multumesc.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

IPP
Moderator
Moderator
Mesaje:4198
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Stergere celule cu valori identice

Mesaj de IPP » Dum Ian 10, 2021 8:02 am

Buna ziua

Pasul urmator este sa explicati, pornind de la fisierul dvs. exemplu, care ar trebui sa fie rezultatul prelucrarii, concret.
De exemplu: "Informatia la nivelul intregului rand este identica pe randurile 1:8, ar trebui sterse randurile 2:8.....

La final, practic, ar trebui sa ramana in acest caz doar ce este acum pe randul 1 si randul 9."

IP

Dan T
Mesaje:3
Membru din:Sâm Ian 09, 2021 2:23 pm

Re: Stergere celule cu valori identice

Mesaj de Dan T » Dum Ian 10, 2021 8:35 am

Buna ziua,
In fiecare rand sunt mai multe valori, pe unele randuri chiar peste 60 si in fiecare rand exista valori duplicate.
Aceste valori duplicate trebuie sa le sterg si sa ramana doar valorire unice, valabil pentru fiecare rand in parte.
Daca valoarea exista duplicat pe 2 sau mai multe randuri acestea trebuie sa ramana, fiecare pe randul ei.
Doar in rand trebuie eliminate.
Multumesc.

IPP
Moderator
Moderator
Mesaje:4198
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Stergere celule cu valori identice

Mesaj de IPP » Dum Ian 10, 2021 8:41 am

Recunosc ca nu am inteles. Prima propunere pe care am facut-o (cea cu macro) nu facea (ca principiu) acel lucru? Adica, pentru fisierul dvs. exemplu, pe randul 1 ar trebui sa ramana doar informatia din A1, C1, respectiv D1? La fel pentru randurile 2:8; pentru randul 9 ar trebui sa ramana doar informatia din A9, D9 si F9?

Eventual atasati din nou fisierul si puneti in foaia noua cum ar trebui sa arate rezultatul dupa prelucrare.

Altfel, poate intelege altcineva mai bine si va si poate ajuta

Indigo-ONE
Mesaje:447
Membru din:Mar Dec 11, 2018 8:54 pm

Re: Stergere celule cu valori identice

Mesaj de Indigo-ONE » Dum Ian 10, 2021 12:30 pm

Dan T scrie:
Dum Ian 10, 2021 8:35 am
Buna ziua,
In fiecare rand sunt mai multe valori, pe unele randuri chiar peste 60 si in fiecare rand exista valori duplicate.
Aceste valori duplicate trebuie sa le sterg si sa ramana doar valorire unice, valabil pentru fiecare rand in parte.
Daca valoarea exista duplicat pe 2 sau mai multe randuri acestea trebuie sa ramana, fiecare pe randul ei.
Doar in rand trebuie eliminate.
Multumesc.
Salut,

Exact asta face codul dat de IPP.
Probabil ca structura datelor tale este alta si nu ai stiut sa modifici - un pic - codul.
Pe viitor nu mai incercati sa "simplificati" problema. Cel mai bine este sa puneti un fisier cu date nereale (daca sunt date sensibile) pentru a se vedea structura datelor.


"I fear the day that technology will surpass our human interaction. The world will have a generation of idiots."
Albert Einstein

Scrie răspuns

Înapoi la “Intrebari despre Excel 2010”