VBA Nykyinen alue

Tämä opetusohjelma selittää nykyisen alueen käytön VBA: ssa.

The Nykyinen alue VBA -ominaisuus on tapa valita kaikki solut, jotka sisältyvät alueeseen, jonka kanssa haluat ehkä työskennellä. Niin kauan kuin alueen solut ovat peräkkäisiä tai ”koskettavat” toisiaan, Nykyinen alue valitsee alueen kaikki solut.

Nykyisen alueen syntaksi

Syntaksi on hyvin yksinkertainen:

1 Alue ("E11"). Nykyinen alue.Valitse

jossa määrität solun, jonka nykyisen alueen haluat valita, ja käytä sitten Nykyinen alue Valitse ominaisuus solualueen valitsemiseksi.

Nykyisen alueen saaminen

Harkitse seuraavaa laskentataulukkoa.

seuraava alimenettely valitsee kaikki tietokannan solut

1234567 Osa FindCurrentRegion ()Dim rng as Range'Aseta alue soluksi E11Aseta rng = alue ("E11")'valitse nykyinen aluerng.CurrentRegion.SelectEnd Sub

Jos suoritamme rutiinia, kaikki solut Nykyinen alue solusta E11 valitaan.

Jos poistamme viereisten solujen sisällön ja suoritamme rutiinin uudelleen, seuraava valitaan nykyiseksi alueeksi.

Jos kuitenkin poistamme vielä enemmän tietoja, saatamme päätyä alla olevaan esimerkkiin solun E11 nykyisestä alueesta.

Kun asetamme tiedot A13: een, päädymme seuraavaan:

The Nykyinen alue palauttaa siis toisen valikoima objekti, jonka määrittelee toimittamasi alueen ympäröivien sarakkeiden ja rivien pienin yhdistelmä.

Rivien ja sarakkeiden laskeminen nykyisellä alueella

Voimme käyttää Nykyinen alue rivien ja sarakkeiden laskemiseksi.

12345678910111213 Osa FindCurrentRegion ()Dim rng as RangeDim iRw kokonaislukunaDim iCol kokonaislukuna'aseta alueAseta rng = alue ("E11")'laske rivitiRw = rng.CurrentRegion.Rows.Count'laske sarakkeetiCol = rng.CurrentRegion.Columns.Count'Näytä tulos viestiruudussaMsgBox ("Meillä on" & iRw & "-rivejä ja" & iCol & "-sarakkeita nykyisellä alueella")End Sub

Jos suoritamme menettelyn, seuraava viesti -ruutu tulee näkyviin.

Nykyisen alueen tyhjentäminen

Voimme myös käyttää nykyisen alueen ominaisuutta solualueiden tyhjentämiseen.

123456 Alin kirkasCurrentRegion ()Dim rng as Range'aseta alueAseta rng = alue ("E11")rng.CurrentRegion.ClearEnd Sub

Nykyisen alueen määrittäminen muuttujaan

Voimme myös määrittää koko nykyisen alueen vaihteluväleille ja sitten käyttää tätä vaihteluväliä solujen käsittelyyn - olipa kyse solujen muotoilusta, solujen lajittelusta jne.

12345678910 Sub AssignCurrentRegionToVariable ()Dim rng as Range'Aseta alue E11: n nykyiseksi alueeksiAseta rng = alue ("E11"). Nykyinen alue'väritä tausta ja tekstirng.Interior.Pattern = xlSolidrng.Interior.Color = 65535rng.Font.Bold = Tottarng.Font.Color = -16776961End Sub

Jos suoritamme yllä olevan menettelyn, saamme alla olevan taulukon!

Aloitus- ja loppusolujen saaminen nykyisellä alueella

Hieman monimutkaisemman koodin avulla voimme saada nykyisen alueen ensimmäisen solun ja viimeisen solun.

123456789101112131415161718 Osa GetStartAndEndCells ()Dim rng as RangeDim iRw kokonaislukunaDim iCol kokonaislukunaHimmennä iColStart, iColEnd, iRwStart, iRwEnd merkkijonona'aseta vaihteluväli E11: n nykyiseksi alueeksiAseta rng = alue ("E11"). Nykyinen alue'aseta alueen aloitussarakeiColStart = rng.Column'Hae alueen sarakeiColEnd = iColStart + (rng.Columns.Count - 1)'hae alueen aloitusriviiRwStart = rng. rivi'hae alueen viimeinen riviiRwEnd = iRwStart + (rng.Rows.Count - 1)'näyttää aloitus- ja lopetusrivien ja sarakkeiden osoitteen viestiruudussaMsgBox ("Alue alkaa osoitteesta" & Solut (iRwStart, iColStart) .Osoite & "ja päättyy kohtaan" & Solut (iRwEnd, iColEnd) .Osoite) "End Sub

Kun suoritamme yllä olevan koodin, seuraava viestiruutu tulee näkyviin

wave wave wave wave wave