Palauta ainutlaatuisia kohteita VBA: n avulla Microsoft Excelissä

Sisällysluettelo

Tässä artikkelissa luomme makron poimimaan yksilöllisiä arvoja määritetystä alueesta.

Tämän esimerkin raakatiedot koostuvat päällekkäisistä maa -nimien kirjoista alueella A7: A21.

Olemme luoneet FindUniqueValues ​​-makron poimimaan yksilöllisiä arvoja määritetystä alueesta. Tämä makro voidaan suorittaa napsauttamalla Lähetä -painiketta. Ennen kuin napsautamme "Lähetä" -painiketta, meidän on määritettävä alueen osoite, joka sisältää päällekkäisiä tietoja solussa H9, ja sen kohteen osoite, jossa tulostus pitäisi näkyä.

Looginen selitys

"FindUniqueValues" -makro ottaa kaksi alueobjektia syöttöparametreiksi. Ensimmäinen parametri määrittää alueen, joka sisältää kaksoiskappaleen, ja toinen parametri määrittää lähtöalueen sijainnin, joka sisältää tuloksen. Tätä makroa ei voida kutsua suoraan, koska meidän on määritettävä parametrit, joten olemme luoneet toisen makron "MacRRunning" kutsumaan makron.

MacroRunning -makro kutsuu FindUniqueValues ​​-makroa käyttäjän syöttämällä parametrilla.

Koodin selitys

SourceRange.AdvancedFilter Action: = xlFilterCopy, _

CopyToRange: = TargetCell, Unique: = True

Range -objektin AdvancedFilter -menetelmää käytetään suodattamaan tai kopioimaan tietoja alueelta tiettyjen kriteerien perusteella. Jotta voimme kopioida vain yksilölliset arvot, meidän on asetettava AdvancedFilterin ainutlaatuinen parametri arvoon True.

Seuraa koodia alla

 Vaihtoehto Explicit Sub FindUniqueValues ​​(SourceRange As Range, TargetCell As Range) 'Ennakkosuodattimen käyttäminen ainutlaatuisten kohteiden hankkimiseksi lähdealueella SourceRange.AdvancedFilter Action: = xlFilterCopy, _ CopyToRange: = TargetCell, Unique: = True End Sub Sub MacroRunning (') FindUniqueValues ​​-makron soittaminen Soita FindUniqueValues ​​(Alue (alue ("H9"). Arvo), alue (alue ("H10"). Arvo)) Loppuosa 

Jos pidit tästä blogista, jaa se ystävillesi Facebookissa. Voit myös seurata meitä Twitterissä ja Facebookissa.

Haluaisimme kuulla sinusta, kerro meille, kuinka voimme parantaa työtämme ja parantaa sitä sinulle. Kirjoita meille sähköpostitse

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave