Vrnite edinstvene predmete z uporabo VBA v programu Microsoft Excel

Kazalo

V tem članku bomo ustvarili makro za izvlečenje edinstvenih vrednosti iz opredeljenega območja.

Neobdelani podatki za ta primer so sestavljeni iz podvojenih vnosov imen držav v obsegu A7: A21.

Ustvarili smo makro »FindUniqueValues« za izvlečenje edinstvenih vrednosti iz opredeljenega območja. Ta makro lahko zaženete s klikom na gumb »Pošlji«. Preden kliknemo gumb »Pošlji«, moramo določiti naslov obsega, ki vsebuje podvojene podatke v celici H9, in naslov cilja, kamor naj se prikaže izhod.

Logična razlaga

Makro »FindUniqueValues« za vhodne parametre vzame dva predmeta območja. Prvi parameter definira obseg, ki vsebuje podvojene podatke, drugi parameter pa položaj začetne celice, ki bo vsebovala izhod. Tega makra ni mogoče priklicati neposredno, saj moramo določiti parametre, zato smo za klic makra ustvarili drugi makro "MacroRunning".

Makro »MacroRunning« pokliče makro »FindUniqueValues« s parametrom, ki ga vnese uporabnik.

Razlaga kode

SourceRange.AdvancedFilter Action: = xlFilterCopy, _

CopyToRange: = TargetCell, Unique: = True

Metoda AdvancedFilter predmeta Range se uporablja za filtriranje ali kopiranje podatkov iz obsega na podlagi določenih meril. Če želite kopirati samo edinstvene vrednosti, moramo nastaviti Unique parameter AdvancedFilter na True.

Za kodo sledite spodaj

 Možnost Explicit Sub FindUniqueValues ​​(SourceRange As Range, TargetCell As Range) "Uporaba vnaprejšnjega filtra za izločanje edinstvenih elementov v izvornem obsegu SourceRange. Klicanje makra FindUniqueValues ​​Pokličite FindUniqueValues ​​(obseg (obseg ("H9"). Vrednost), obseg (obseg ("H10"). Vrednost)) End Sub 

Če vam je bil ta blog všeč, ga delite s prijatelji na Facebooku. Prav tako nam lahko sledite na Twitterju in Facebooku.

Radi bi slišali od vas, nam sporočite, kako lahko izboljšamo svoje delo in ga izboljšamo za vas. Pišite nam na spletnem mestu e -pošte

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave