Pronalaženje jedinstvenih vrijednosti pomoću VBA u programu Microsoft Excel

Anonim

U ovom ćemo članku stvoriti prilagođenu funkciju za pronalaženje jedinstvenih vrijednosti iz definiranog raspona.

Sirovi podaci za ovaj primjer sastoje se od dupliciranih unosa naziva zemlje u rasponu A8: A21.

Logično objašnjenje

Napravili smo prilagođenu funkciju "UniqueItem" za izdvajanje jedinstvenih vrijednosti iz raspona. Ova funkcija uzima dva parametra kao ulaz. Prvi parametar je raspon koji se sastoji od dupliciranih podataka, a drugi parametar definira broj indeksa jedinstvene vrijednosti u jedinstvenoj zbirci.

Ova funkcija vraća jedinstvenu vrijednost iz raspona na temelju broja indeksa. Drugi parametar je izborni parametar, ako drugi parametar nije naveden tada funkcija vraća broj jedinstvene vrijednosti u definiranom rasponu.

Ako je vrijednost definirana za drugi parametar veća od broja jedinstvenih vrijednosti u rasponu, funkcija vraća posljednju jedinstvenu vrijednost.

Objašnjenje koda

Uključeno Slijedi nastavak greške

Za svaku CellValue u InputRange

CUnique.Add CellValue.Value, CStr (CellValue.Value)

Sljedeći

Uključeno Greška Idi na 0

Gornji kôd koristi se za stvaranje objekta zbirke koji će sadržavati jedinstvenu vrijednost iz definiranog raspona. Izrazi "On Error" koriste se za rješavanje pogrešaka, jer kada kôd pokuša unijeti dvostruke vrijednosti u zbirku, zbirka će generirati pogrešku.

Molimo slijedite dolje za kôd

 Opcija Eksplicitna funkcija UniqueItem (InputRange As Range, Optional ItemNo As Integer = 0) As Variant Dim CellValue As Range Dim CUnique Kao nova zbirka Dim UCount As Integer On Greška Nastavi dalje 'Dodavanje jedinstvenih stavki u zbirku iz definiranog raspona Za svaku CellValue u InputRange CUnique .Dodaj CellValue.Value, CStr (CellValue.Value) Next On Greška Idi na 0 'Dobivanje broja jedinstvenih stavki u zbirci UCount = CUnique.Count If ItemNo = 0 Then' Vraćanje broja jedinstvenih stavki UniqueItem = UCount ElseIf ItemNo <= UCount Zatim "Vraćanje jedinstvene vrijednosti na temelju broja stavke UniqueItem = CUnique (ItemNo) Else" Vraćanje posljednje jedinstvene vrijednosti UniqueItem = CUnique (UCount) End If End Funkcija 

Ako vam se dopao ovaj blog, podijelite ga sa svojim prijateljima na Facebooku. Također, možete nas pratiti na Twitteru i Facebooku.

Voljeli bismo vas čuti, javite nam kako možemo poboljšati svoj rad i učiniti ga boljim za vas. Pišite nam na web stranici e -pošte