Excel VBA ir divas metodes, kas pieder pie lietojumprogrammas objekta, lai manipulētu ar diviem vai vairākiem diapazoniem: Savienība un krustošanās.
Savienība
Savienības metode atgriež visas šūnas divos vai vairākos diapazonos, kas nodoti kā arguments.
Šī komanda atlasīs diapazonu, kas parādīts attēlā:
1 | Savienība (diapazons ("A1: B4"), diapazons ("B3: C6")). Izvēlieties |
Ar Savienības metodi atgrieztajam diapazonam varat piešķirt jebkuru vērtību vai formulu:
1 | Savienība (diapazons ("A1: B4"), diapazons ("B3: C6")) = 10 |
Tādējādi katrā Savienības šūnā tiks ievadīta vērtība 10.
Jūs varat aptīt jebkuru funkciju, kas apkopo diapazonu, ap Savienības metodi. Šis piemērs atgriež vērtību summu diapazonos A1: B4 un B3: C6:
1 | Rezultāts = Application.WorksheetFunction.Sum (savienojums (diapazons ("A1: B4"), diapazons ("B3: C6"))) |
Jūs varētu būt pārsteigts, ja rezultātu iegūsit kā 160! Lai gan Savienībā ir tikai 14 šūnas (katrā diapazonā 8, no kurām 2 ir kopīgas), aplūkojot atlasi, Savienība faktiski atgriež 16 šūnas, tāpēc rezultāts ir 160.
Krustojas
Metodes krustošana atgriež tikai kopējās šūnas divos vai vairākos diapazonos, kas nodoti kā arguments.
Šī komanda atlasīs attēlā redzamo diapazonu (pelēks apgabals):
1 | Krustot (diapazons ("A1: B4"), diapazons ("B3: C6")). Izvēlieties |
Intersect izmantošana
Visbiežāk Intersect lieto notikumos, kas saistīti ar darblapu vai darbgrāmatu. To izmanto, lai pārbaudītu, vai mainītā (-ās) šūna (-as) pieder pie interesējošā diapazona. Sekojošais piemērs ar pārbaudi, vai šūnas (-es) ir mainītas (identificētas ar mērķi) un diapazons A1: A10 ir izplatītas, un, ja ir, veiciet atbilstošas darbības.
Krustojuma objekts neko neatgriež, ja nav kopīgu šūnu, tāpēc krustojums (Mērķis, Diapazons (“A1: A10”)) Vai nekas nebūs patiess, ja nav kopīgu šūnu. Pievienojot nosacījumam Ne, nosacījums tiek padarīts par patiesu tikai tad, ja testa rezultāts Krustojas (Mērķis, Diapazons (“A1: A10”)) Nav nekas nav aplams, citiem vārdiem sakot, mērķim un diapazonam A1: A10 ir dažas kopīgas šūnas.
12345 | Privāta apakšdarblapas maiņa (ByVal mērķis kā diapazons)Ja nav krustošanās (mērķis, diapazons ("A1: A10")), tad nekas nav'Veiciet vēlamo darbībuBeigas JaBeigu apakš |
Autors: Vinamra Čandra