VBA lieluma maiņa - Kā izmantot Resize Property izmēru programmā Excel VBA? (Ar piemēriem)

Satura rādītājs

Excel VBA lieluma maiņa

Resize ir rekvizīts, kas pieejams VBA, lai pēc vajadzības mainītu vai mainītu aktīvās šūnas šūnu diapazonu. Piemēram, pieņemsim, ka atrodaties šūnā B5, un no šīs šūnas, ja vēlaties atlasīt 3 rindas un divas kolonnas, mēs varam mainīt diapazona lielumu, izmantojot VBA rekvizītu RESIZE.

VBA Resize Property sintakse

Zemāk ir rekvizīta VBA RESIZE sintakse.

Diapazons (). Mainīt izmēru ((Rindas izmērs), (Kolonnas izmērs))

Pirmkārt, mums jānodrošina, no kuras šūnas mums ir jāmaina izmērs, izmantojot objektu Range .

Pēc tam izmantojiet rekvizītu Excel VBA Resize , un šajā īpašumā mums jānorāda rindas lieluma ierobežojums un kolonnas lieluma ierobežojums. Pamatojoties uz norādītajiem rindu numuriem un kolonnu numuriem, tas to mainīs.

Resize lieluma izmantošanas piemēri VBA

Zemāk ir piemēri, kā izmantot izmēru maiņu programmā Excel VBA.

1. piemērs

Pieņemsim, ka jums ir dati no šūnas A1 līdz B14, un no šūnas A1, ja vēlaties atlasīt 3 rindas uz leju un divas kolonnas pa kreisi, mēs to varam izdarīt, izmantojot Excel VBA rekvizītu RESIZE.

Zemāk ir dati, kurus mēs izmantojam šim piemēram.

Pirmkārt, mums jānodrošina pirmās šūnas atsauce vai sākuma punkts, izmantojot objektu RANGE. Šajā piemērā sākuma punkts ir šūna A1.

Kods:

Sub Resize_Example () diapazons ("A1"). Beigu apakšnodaļa

Šajā diapazonā izmantojiet rekvizītu RESIZE.

Kods:

Sub Resize_Example () diapazons ("A1"). Resize (End Sub

Pirmais RESIZE arguments ir Row Size, tāpēc mums jāizvēlas 3 datu rindas un jānorāda skaitliskā vērtība 3.

Kods:

Sub Resize_Example () diapazons ("A1"). Mainīt izmēru (3, End Sub

Nākamais arguments ir kolonnu lielums , ievadiet kolonnu atlases veidu. Es ievadīšu 3 kolonnas.

Kods:

Sub Resize_Example () diapazons ("A1"). Resize (3,3) Beigas Sub

Kad izmēru maiņa ir pabeigta, mums jāsniedz tas, kas mums jādara ar šo diapazonu. Lai sāktu, es izvēlēšos tikai metodi “Atlasīt”.

Kods:

Sub Resize_Example () diapazons ("A1"). Mainiet izmēru (3, 3). Atlasiet Beigu apakšdaļu

Palaidiet kodu un uzziniet, cik rindu un cik kolonnu tas atlasīs.

Kā redzat iepriekš no A1 šūnas, tā ir izvēlējusies trīs rindas uz leju un trīs kolonnas pa labi.

2. piemērs

Tagad ieskatieties zemāk redzamajā VBA kodā.

Iepriekš kodu rindas lielums, mēs esam piegādā tukšas šūnas, un kolonnu Izmērs, mums ir pieejama 3.

Kods:

Sub Resize_Example () diapazons ("A1"). Mainīt izmēru (0, 3). Atlasiet Beigu apakšdaļu

Palaidiet kodu un uzziniet, cik rindu un cik kolonnu tas atlasīs.

Kā jūs varat redzēt, tas ir izvēlēties tikai aktīvo šūnu rindu, ti, 1 st rindu un trīs kolonnas. Tas ir tāpēc, ka rindas izmēram mēs esam piegādājuši tukšas šūnas, bet kolonnu izmēram - 3, un attiecīgi tas ir izvēlējies datu diapazonu.

Tagad skatieties zemāk esošo kodu.

Kods:

Sub Resize_Example () diapazons ("A1"). Mainiet izmēru (3). Atlasiet End Sub

What this code will do is it will select only three rows, including the active cell row but no extra columns.

Example #3

Use Resize To Select Unknown Ranges. Resize is best utilized when you want to select an unknown range of cells. For example, look at the below image of the data range.

It has data all the ways from Column A to Column P and row-wise we have up until the 700th row.

Assume you know your data will keep changing, and you want to select the data range every now and then by manually changing the row and column number. However, by using VBA RESIZE property, we can do this easily.

Look at the below code.

Code:

Sub Resize_Example1() Dim LR As Long Dim LC As Long Worksheets("Sales Data").Select LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(1, Columns.Count).End(xlToLeft).Column Cells(1, 1).Resize(LR, LC).Select End Sub

First, I have declared two variables to find the last used row (LR) and the last used column (LC).

Dim LR As Long Dim LC As Long

Since our data is in the worksheet named “Sales Data,” we are choosing this worksheet by using the below code.

Worksheets(“Sales Data”).Select

Now below code will find the last used row and last used column.

LR = Cells(Rows.Count, 1).End(xlUp).Row

LC = Cells(1, Columns.Count).End(xlToLeft).Column

Tagad no pirmās šūnas mēs mainām diapazona diapazonu no pēdējās izmantotās rindas līdz pēdējai izmantotajai kolonnai, un atlasiet izmantoto metodi. Tāpēc tagad nav svarīgi, cik lieli ir jūsu dati. Tas dinamiski atlasīs datus, atrodot pēdējo izmantoto rindu un pēdējo izmantoto kolonnu.

Atceramās lietas

  • Īpašuma izmēra maiņa VBA mainīs diapazona lielumu no aktīvās šūnas (ieskaitot aktīvo šūnu).
  • Mums vienkārši jānorāda, cik rindu un kolonnu izmēru mainīs no VBA aktīvās šūnas.
  • Īpašumam RESIZE mēs nevaram izmantot negatīvu rindu un kolonnu numuru.

Interesanti raksti...