Excel VBA metszet

A VBA metszet matematikában vagy geometriaban azt jelenti, amikor két vagy több vonal vagy terület keresztezi egymást. Az azt követően létrehozott közös pontot vagy területet keresztezési pontnak vagy területnek nevezzük. Kiválóan kiemelhetjük és megmérhetjük a kereszteződés területét is.

Az kereszteződés szintaxisa az Excel VBA-ban

Az Intersect függvény a következő szintaxissal rendelkezik az Excel VBA-ban:

Mint láthatjuk, Arg1-et és Arg2-et említik, Range. A többi érv zárójelben található. Ami azt jelenti, hogy az első két argumentumot Range-ként kell kiválasztani. Más szóval, legalább 2 területet be kell vonni az Intersect megtalálásához. A többi érv tartományként választható meg, vagy tartalmazhat más dolgokat vagy paramétereket, valamint igényekenként. Ez a szintaxis legfeljebb 30 érvet képes befogadni.

Hogyan lehet használni az Excel VBA metszet funkciót?

Megtanuljuk, hogyan kell használni a VBA kereszteződés funkciót, néhány példával az Excelben.

Itt töltheti le a VBA Intersect Excel sablont - VBA Intersect Excel sablon

VBA metszéspont - 1. példa

Az első példában kiemeli és létrehozza a keresztezési területet, ha van valamilyen adatkészlet. Ehhez olyan mintaadatokkal rendelkezünk, amelyekben 3 oszlop van kitöltve számokkal, az alábbiak szerint.

Most meg kell találnunk a fenti adattáblázat metszéspontját a VBA Intersect használatával. Ehhez kövesse az alábbi lépéseket:

1. lépés: Nyissa meg a VBA ablakot, és nyissa meg a modult a Beszúrás menüből az alább látható módon.

Megkapunk egy üres ablakot a modulról.

2. lépés: Most írja be a VBA Intersect alkategóriáját vagy bármely más nevet, amelyet választott.

Kód:

 Sub VBAIntersect1 () Sub 

3. lépés: Most közvetlenül illessze be az Intersect parancsot, az alább látható módon.

Kód:

 VBAIntersect1 () kereszteződés (Sub sub vége) 

Mint már kifejtettük az Intersect részletes szintaxisát, hozzáadunk egy metszéspontot. Kiválaszthatunk N tartományt, de legalább két tartománynak kell lennie.

Nézzük meg egy olyan metszéspont területét, ahol az első terület A1-től B8-ig tart, a második terület B3-tól C12-ig, a harmadik terület pedig A7-től C10-ig terjed. Megfontolhatjuk és kiválaszthatjuk a kereszteződés mintáinak bármilyen kombinációját.

Most nézzük meg, hogy ezen a ponton mely ponton találkoznak és keresztezik egymást ezek a területek. A fenti területek által létrehozott közös terület a mi metszéspontunk.

4. lépés: A VBA Intersect moduljában válassza ki az első területtartományt az alább látható módon.

Kód:

 Sub VBAIntersect1 () kereszteződés (tartomány ("A1: B8")) Sub 

Felvettük az első tartományt, de a szintaxisunk még mindig hiányos.

5. lépés: Most illessze be a fent tárgyalt két terület többi részét vesszővel elválasztva.

Kód:

 Sub VBAIntersect1 () kereszteződés (tartomány ("A1: B8"), tartomány ("B3: C12"), tartomány ("A7: C10")) 

6. lépés: Most adja meg a „True” feltételt.

Kód:

 Sub VBAIntersect1 () kereszteződés (tartomány ("A1: B8"), tartomány ("B3: C12"), tartomány ("A7: C10")) = valós vég sub 

Ez kitölti a kódunkat.

7. lépés: Most állítsa össze a kódot, és futtassa a lejátszás gombra kattintással, amely a menüsor alatt található, az alább látható módon.

Megkapjuk azt a közös területet vagy keresztezett területet, amelynek a fentiek szerint IGAZ értékű. Noha megkaptuk a kereszteződés területét, az IGAZ felváltotta az adatokat, amelyek a keresztezett területen voltak.

8. lépés: Most, hogy elkerüljük ezt, megváltoztathatjuk a szín hátterét, az általános cellákat bármilyen színre, amelyet választunk. Ehhez az Intersect szintaxisa után használja a Belső funkciót a Szín mellett, az alább látható módon.

Kód:

 Sub VBAIntersect1 () kereszteződés (tartomány ("A1: B8"), tartomány ("B3: C12"), tartomány ("A7: C10").) Interior.Color = Sub Sub vége 

9. lépés: Most a VBA-ban nem használhatjuk a szín nevét, amelyet közvetlenül használni akarunk. Ehhez hozzá kell adnunk a „ vb ” -et, amelyet a VBA-ban elérhető színek aktiválására használunk. Most használja, és adjon hozzá tetszőleges színű nevet. Az alább látható módon választjuk itt a Zöldet.

Kód:

 Sub VBAIntersect1 () kereszteződés (tartomány ("A1: B8"), tartomány ("B3: C12"), tartomány ("A7: C10").) Interior.Color = vbGreen End Sub 

10. lépés: Most fordítsa újra egyszerre az írott kódot, mivel a kód elég kicsi, és futtassa azt.

Látni fogjuk, hogy az keresztezett terület színe zöldre változik és közös terület lesz, amelyet a B7-től B8-ig terjedő 3 különböző terület metszéspontja hoz létre.

VBA metszéspont - 2. példa

Van egy másik, de egészen más módszer a VBA Intersect használatára. Ezúttal egy metszetet használunk egy meghatározott munkalapon. A Sheet2-ben egy területet jelöltünk B4-től E8-ig, az alább látható módon.

Kövesse az alábbi lépéseket:

1. lépés: A VBA-ban lépjen az aktuális munkafüzet 2. lapjára, az alább látható módon.

2. lépés: Most válassza ki a Munkalapot az első legördülő menüből. Ez lehetővé teszi a kód használatát csak az aktuális lapon.

3. lépés: És a második legördülő menüből válassza az Alább látható módon a Change lehetőséget. Ez a kiválasztott tartományban végrehajtott változások megcélzására szolgál.

4. lépés: Kódunkat csak az első alkategóriába írjuk.

Kód:

 Privát alfüzet_váltás (ByVal Cél mint tartomány) Vége Al 

5. lépés: Az If-Else hurkot fogjuk használni, hogy megteremtsük a kereszteződés feltételeit.

Kód:

 Privát alfüzet_váltás (ByVal Cél mint tartomány), ha Vége, ha az Al 

6. lépés: Először válassza ki a céltartományt B4-től E8-ig, az alább látható módon. Ez elsősorban a B4 – E8 szakaszok által lefedett terület metszéspontjára irányul.

Kód:

 Privát alfüzet_váltás (ByVal Target as Range) Ha keresztezi (Target, Range ("B4: E8")) End If End End 

7. lépés: És ha nincs semmi a célterületen, akkor be kell írnunk egy nyilatkozatot, amely átirányítja a kódot.

Kód:

 Privát alfüzet_váltás (ByVal cél mint tartomány) Ha metsző (cél, tartomány ("B4: E8")) nincs semmi, akkor véget ér, ha vége az al 

8. lépés: És ha valóban a cél túl van a tartományon, használhatunk egy üzenetmezőt egy riasztási üzenettel, az alább látható módon.

Kód:

 Privát alfüzet_váltás (ByVal Cél mint tartomány) Ha az metszéspont (Cél, tartomány ("B4: E8") nincs semmi, akkor az MsgBox "A tartományon kívül" Vége, ha az Al vége 

9. lépés: És az Else nyilatkozatban, ahol valami íródott a mezőbe, akkor azonnal értesítést kell kapnunk, ha az írott tartalom a mezőben található, az alább látható módon.

Kód:

 Privát alfüzet_váltás (ByVal Cél mint tartomány) Ha az metszéspont (Cél, tartomány ("B4: E8") nincs semmi, akkor MsgBox "Hatótávolságon kívül" Egyéb MsgBox "Tartományon belül" Vége, ha az Al vége 

10. lépés: Most fordítsa le az írásbeli kód minden lépését, és zárja be a VBA munkalapját. Mivel írtuk a lap specifikus kódját, akkor az ugyanabban fog működni.

11. lépés: Most írjon be valamit a dobozba.

Amint láthatjuk, a C5 cellában 2-et írtunk a dobozba, kaptuk az üzenetet vagy „ Hatótávolságon belül ”.

12. lépés: Írjon ismét valamit a dobozból. 1-et írtunk a B10 cellába, és az alább látható módon megkaptuk a „Hatótávolságon kívül” üzenetet.

Ez egy másik módja az Intersect használatának az Excel VBA-ban.

Az Excel VBA Intersect előnyei

  • Nagyon könnyű legalább kiemelni azt a területet, amely az 1. példa szerint keresztezi a keretet.
  • Ez nagyon hasznos, ha szűrjük vagy dolgoznunk kell az olyan adatokat, amelyek eltérő területet kereszteznek, például dátumok, tulajdonos stb.

Dolgok, amikre emlékezni kell

  • Ne felejtse el menteni a fájlt Macro Enable Excel formátumban, hogy a kód minden felhasználáskor működjön.
  • Ha a 2. cikkben bemutatott modul helyett a Sheetben a kódot írja, akkor a kódot csak az adott lapra kell alkalmazni. Ez a kód nem fog működni egyetlen más lapon sem.
  • A céltartomány használata a 2. példában bemutatott módon hasznos a megcélzott terület meghatározásában.

Ajánlott cikkek

Ez a VBA Intersect útmutatója. Itt tárgyaljuk, hogyan lehet használni az Excel VBA kereszteződés funkciót, néhány gyakorlati példával és letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket -

  1. Példák a VBA hurkokra
  2. Excel oszlop a számhoz
  3. VBA Csináld, amíg a hurok
  4. Készítsen költségvetést Excel-ben

Kategória: