Excel VBA - Unija i presjek

Excel VBA ima dvije metode, koje pripadaju aplikacijskom objektu, za manipuliranje s dva ili više raspona: Union i Intersect.

Unija

Metoda Union vraća sve ćelije u dva ili više raspona koji su proslijeđeni kao njezin argument.

Sljedeća naredba će odabrati raspon prikazan na donjoj slici:

1 Union (raspon ("A1: B4"), raspon ("B3: C6")). Odaberite

Rasponu vraćenom metodom Union možete dodijeliti bilo koju vrijednost ili formulu:

1 Union (raspon ("A1: B4"), raspon ("B3: C6")) = 10

To će unijeti vrijednost 10 u svaku ćeliju u Uniji.

Možete omotati bilo koju funkciju koja sažima raspon oko metode Union. Sljedeći će primjer vratiti zbroj vrijednosti u rasponima A1: B4 i B3: C6:

1 Rezultat = Application.WorksheetFunction.Sum (unija (raspon ("A1: B4"), raspon ("B3: C6")))

Možda ćete se iznenaditi kad vrijednost u rezultatu dobijete 160! Iako u Uniji postoji samo 14 ćelija (8 u svakom rasponu od kojih su 2 uobičajene) kada pogledate Odabir, Union zapravo vraća 16 ćelija, pa je Rezultat 160.

Presijecati

Intersect metoda vraća samo uobičajene ćelije u dva ili više raspona koji su proslijeđeni kao njen argument.

Sljedeća naredba će odabrati raspon prikazan (sivo područje) na donjoj slici:

1 Presijecanje (raspon ("A1: B4"), raspon ("B3: C6")). Odaberite

Upotreba Intersecta

Najčešće se Intersect koristi u događajima povezanim s radnim listom ili radnom knjigom. Koristi se za provjeru pripadaju li promijenjene ćelije rasponu interesa. Slijedeći primjer s provjerom jesu li se ćelije promijenile (identificirale metom) i raspon A1: A10 su uobičajene i poduzmite odgovarajuće radnje ako jesu.

Objekt presijecanja ne vraća ništa ako nema zajedničkih ćelija pa presijecanje (cilj, raspon (“A1: A10”)) nije ništa neće biti istina ako nema zajedničkih ćelija. Dodavanjem Ne u uvjet postaje istinito samo ako rezultat testa Presjek (cilj, raspon (“A1: A10”)) nije ništa nije lažno, drugim riječima cilj i raspon A1: A10 imaju neke zajedničke ćelije.

12345 Privatni podradni list_Promjena (ByVal cilj kao raspon)Ako se ne presijeca (cilj, domet ("A1: A10")) onda nije ništa'Poduzmite željenu radnjuZavrši akoKraj podm

Napisala: Vinamra Chandra

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave