Ha kevés az időd és csak a videó érdekel, itt megtalálod.
A videóban prezentált makró lehetővé teszi, hogy kettőnél több szűrési feltételt (filter condition) adjunk meg egy tartománynál, mégpedig helyettesítő karakter (angolul joker vagy wildcard) használatával.
A kód úgymond lelke a Dictionary objektum (object), melyet itt nem mutatok be részletesen (a téma külön bejegyzést érdemelne), kizárólag az ide vonatkozó részt.
A Dictionary egyfajta gyűjtemény objektum (collection object). Az alábbiakat tartalmazhatja: szám (number), szöveg (text), dátum (date), tömb (array), tartomány (range) stb. Mivel kizárólag egyedi kulcsot (unique key) tartalmazhat, végigmehetünk egy tömb/tartomány/oszlop/sor stb elemein és egyedi, duplikációtól mentes értékeket kapunk vissza. Bár ennek az objektumnak nem ez a fő felhasználási módja, igen széles körben használják erre is.
Ezt a technikát alkalmaztam az “Értékek kinyerése az ismétlődések (pl. duplikációk) eltávolításával” posztomban is (7-es pont):
https://xlmotyo.hu/blog/ertekek-ismetlodes-eltavolitasa/
Jelen esetben az egyedi értékeket (kulcsokat) kell megkapnunk az első oszlopban, mely cikkszámokat tartalmaz. Ha a munkalap használt tartományát (used range) “Tart”-nak nevezzük, akkor végig kell mennünk annak sorain és beolvastatni az első oszlop értékeit a Dictionary objektumba:
itt az egyedi érték (egyedi kulcs):
Példa:
Ez esetben az egyedi értékek ezek lennének: 10862 és 11430.
az egyedi érték listáját X-nek nevezzük…
… ezt követően pedig az egyedi értékeket az alábbi módon nyerhetjük ki:
Az adott munkafüzetbe szúrjunk be egy modult a Visual Basic szerkesztőjében és az alábbi kódot adjuk hozzá:
Végezetül pedig a kapcsolódó videó egy továbbfejlesztett érdekességgel a végén:
Remélem hasznos volt a poszt.
Kérdésed, észrevételed van? Szólj hozzá lent vagy dobj egy emailt: xlmotyo@gmail.com