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