Excel – Brisanje dupliciranih brojeva iz liste

Ukoliko intenzivno koristite Excel u profesionalnom radu, možda će vam se javiti potreba da iz liste brojeva (bloka ćelija) izbacite one koji se ponavljaju. Uklanjanje duplikata možete odraditi procesom filtriranja, ali onda se brojevi zaista i ne odstranjuju, već se samo skrivaju. Druga mogućnost je da sortirate listu i ručno uklonite sve duplikate, što nije teško ukoliko je lista mala. Ali šta ako imate blok ćelija koji broji recimo 2000 vrednosti? Ovo vama ili vašim saradnicima može da oduzme dosta vremena. Kao i uvek i za ovaj problem postoji elegantno VBA rešenje.

U sledećem VBA programskom kodu videćete kako možete vrlo brzo (naravno, uz pomoć petlji) da prođete kroz listu brojeva i uklonite duplicirane. Pre toga, pre pozivanja makroa, bitno je samo da sortirate listu brojeva:


Public CurRow, oZ, uY, Qq

Sub Brisi_Duplikate()
Sheets("Sheet1").Activate
Qq = Application.CountA(ActiveSheet.Range("A:A"))
{prebrojte celije pre pocetka}
For uY = 1 To 6
{prva petlja prolazi 6 puta}
For oZ = 2 To Qq
{glavna petlja}
If Cells(oZ, 1) = Cells(oZ – 1, 1) Then
{provera duplikata}
Cells(oZ, 1).Select
{selekcija celije sa dupliciranom vrednoscu}
Selection.Delete Shift:=xlUp
{Brisanje celije}
Qq = Qq – 1
{promena kriterija petlje, jer date celije vise nema}
End If
Next
{unutrasnja petlja}
Next
{spoljna petlja}
End Sub

Pratite Krstaricu na www.krstarica.com