VBA praegune piirkond

See õpetus selgitab, kuidas praegust piirkonda VBA -s kasutada.

The Praegune piirkond atribuut VBA -s on võimalus valida kõik lahtrid, mis asuvad vahemikus, millega võiksite töötada. Niikaua kui vahemikus olevad lahtrid on kõik järjest või üksteist puudutavad, Praegune piirkond valib piirkonna kõik lahtrid.

Praeguse piirkonna süntaks

Süntaks on väga lihtne:

1 Vahemik ("E11"). Praegune piirkond.Valige

kus määraksite lahtri, mille praeguse piirkonna soovite valida, ja seejärel kasutage Praegune piirkond. Valige atribuut, et valida lahtrite vahemik.

Praeguse piirkonna saamine

Mõelge järgmisele töölehele.

järgmine alamprotseduur valiks kõik andmebaasi lahtrid

1234567 Alamotsingu praegune piirkond ()Dim rng As Rangeseadistage vahemik lahtrisse E11Määra rng = Vahemik ("E11")'valige praegune piirkondrng.CurrentRegion.SelectEnd Sub

Kui me käitame rutiini, siis kõik rakud Praegune piirkond valitakse lahtrist E11.

Kui eemaldame külgnevate lahtrite sisu ja käivitame rutiini uuesti, valitakse praeguseks piirkonnaks järgmine.

Kui aga eemaldame veelgi rohkem andmeid, võime lõpetada järgmise näitega lahtri E11 praeguse piirkonna kohta.

Lisades teabe D13 -sse, jõuame järgmisele:

The Praegune piirkond tagastab seega teise vahemik objekti, mille määrab teie esitatud vahemikku ümbritsevate hõivatud veergude ja ridade väikseim kombinatsioon.

Praeguse piirkonna ridade ja veergude lugemine

Saame kasutada Praegune piirkond ridade ja veergude lugemiseks.

12345678910111213 Alamotsingu praegune piirkond ()Dim rng As RangeDim iRw täisarvunaDim iCol täisarvuna'määrake vahemikMäära rng = Vahemik ("E11")'loe riduiRw = rng.CurrentRegion.Rows.Count'loendage veergeiCol = rng.CurrentRegion.Columns.Count'näita tulemusteateidMsgBox ("Meil on praeguses piirkonnas ridu" & iRw & "ja veerge" & iCol & "")End Sub

Kui me protseduuri käivitame, ilmub järgmine sõnumikast.

Praeguse piirkonna puhastamine

Lahtrite vahemiku tühjendamiseks saame kasutada ka praeguse piirkonna omadust.

123456 Alam ClearCurrentRegion ()Dim rng As Range'määrake vahemikMäära rng = Vahemik ("E11")rng. Praegune piirkond. SelgeEnd Sub

Praeguse piirkonna määramine muutujale

Samuti võime määrata kogu praeguse piirkonna vahemiku muutujale ja seejärel kasutada seda vahemiku muutujat lahtritega manipuleerimiseks - olgu see siis lahtrite vormindamine, lahtrite sortimine jne …

12345678910 Sub AssignCurrentRegionToVariable ()Dim rng As Range"määrake vahemik E11 praeguseks piirkonnaksMäära rng = Vahemik ("E11"). Praegune piirkond'värvige taust ja tekstrng.Interior.Pattern = xlTahkerng. Sisemine. Värv = 65535rng.Font.Bold = Tõsirng.Font.Color = -16776961End Sub

Kui käivitame ülaltoodud protseduuri, saame lõpuks töölehe, nagu allpool näidatud!

Algus- ja lõpplahtrite hankimine praeguses piirkonnas

Veidi keerukama koodiga saame praeguse piirkonna esimese lahtri ja viimase lahtri.

123456789101112131415161718 Alam GetStartAndEndCells ()Dim rng As RangeDim iRw täisarvunaDim iCol täisarvunaHämardage iColStart, iColEnd, iRwStart, iRwEnd stringina'määrake vahemiku muutujaks E11 praegune piirkondMäära rng = Vahemik ("E11"). Praegune piirkond'määrake vahemiku algusveergiColStart = rng. Veerg'saada vahemiku lõppveergiColEnd = iColStart + (rng. Veerud.arv - 1)'saate vahemiku algusreaiRwStart = rng. Rida'saada vahemiku lõppridaiRwEnd = iRwStart + (rng.Rows.Count - 1)'kuvatakse sõnumikastis algus- ja lõpprea ning veergude aadressMsgBox ("Vahemik algab kell" ja lahtrid (iRwStart, iColStart). Aadress & "ja lõpeb" & lahtrid (iRwEnd, iColEnd). Aadress)End Sub

Kui käivitame ülaltoodud koodi, kuvatakse järgmine sõnumikast

wave wave wave wave wave