VBA suuruse muutmine - Kuidas kasutada vara suuruse muutmist Exceli VBA-s? (Näidetega)

Lang L: none (table-of-contents)

Exceli VBA suuruse muutmine

Suuruse muutmine on VBA-s saadaval olev omadus, et vajadusel aktiivsest lahtrist lahtrivahemikku muuta või suurust muuta. Oletame näiteks, et olete lahtris B5 ja kui soovite sellest lahtrist valida 3 rida ja kaks veergu, siis saame VBA omaduse RESIZE abil muuta vahemiku suurust.

VBA suuruse vara süntaks

Allpool on atribuudi VBA RESIZE süntaks.

Vahemik (). Suuruse muutmine ((rea suurus), (veeru suurus))

Esiteks peame varustama, millisest lahtrist peame objekti Range muutma.

Seejärel kasutage atribuuti excel VBA Resize ja selles atribuudis peame esitama rea suuruse ja veeru suuruse piirangu. Tuginedes esitatud ridade ja veergude numbritele, muudab see selle suurust.

Näited Resize'i kasutamise kohta VBA-s

Allpool on näited suuruse muutmise kasutamisest Exceli VBA-s.

Näide 1

Oletame, et teil on andmeid lahtrist A1 kuni B14 ja lahtrist A1, kui soovite valida 3 rida allapoole ja kaks veergu vasakust vahemikust, saame seda teha Exceli VBA atribuudi RESIZE abil.

Allpool on toodud andmed, mida selle näite jaoks kasutame.

Esiteks peame esitama esimese lahtriviite või lähtepunkti, kasutades objekti RANGE. Selles näites on lähtepunktiks lahter A1.

Kood:

Alamsuuruse_näide () vahemik ("A1"). Lõpeta alam

Selle vahemiku jaoks kasutage omadust RESIZE.

Kood:

Alamsuuruse_näide () vahemik ("A1"). Suuruse muutmine (alamalam

RESIZE'i esimene argument on Row Size, seega peame valima 3 andmerida ja edastama arvväärtuse 3.

Kood:

Alam suuruse muutmise_näide () vahemik ("A1"). Suuruse muutmine (3, alamosa lõpp

Järgmine argument on selle veeru suurus , sisestage veergude valimise viis. Sisestan 3 veergu.

Kood:

Alam suuruse muutmine_näide () vahemik ("A1"). Suuruse muutmine (3,3) Lõpp alam

Kui suuruse muutmine on tehtud, peame pakkuma, mida peame selle vahemikuga tegema. Alustuseks valin lihtsalt meetodi „Vali”.

Kood:

Sub Resize_Example () Range ("A1"). Muuda suurust (3, 3). Valige End Sub

Käivitage kood ja vaadake, mitu rida ja mitu veergu see valiks.

Nagu näete lahtrist A1 ülal, on see valinud kolm rida allapoole ja kolm veergu paremale.

Näide 2

Nüüd heitke pilk allpool olevale VBA koodile.

Eespool kood Row Suurus, oleme esitanud tühjad lahtrid, ja veerg Suurus, oleme tarninud 3.

Kood:

Sub Resize_Example () vahemik ("A1"). Muuda suurust (0, 3). Valige End Sub

Käivitage kood ja vaadake, mitu rida ja mitu veergu see valiks.

Nagu näete, see on valida ainult aktiivse lahtri rida, st 1 silmus rea ja kolm veergu. Selle põhjuseks on asjaolu, et rea suuruse jaoks oleme tarninud tühjad lahtrid ja veeru suuruse jaoks 3 ja vastavalt sellele on see valinud andmevahemiku.

Nüüd vaadake allolevat koodi.

Kood:

Sub Resize_Example () vahemik ("A1"). Muuda suurust (3). Valige 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

Esimesest lahtrist muudame vahemikku viimati kasutatud reast viimati kasutatud veergu ja valige valitud meetod. Nii et nüüd pole tähtis, kui suured on teie andmed. See valib andmed dünaamiliselt, leides viimati kasutatud rea ja viimati kasutatud veeru.

Asjad, mida meeles pidada

  • Atribuudi suuruse muutmine VBA-s muudab aktiivse lahtri (sh ka aktiivse lahtri) vahemiku suurust.
  • Peame lihtsalt esitama, mitu rida ja mitu veergu tuleb VBA aktiivsest lahtrist muuta.
  • Me ei saa atribuudi RESIZE jaoks kasutada negatiivset rea ja veeru numbrit.

Huvitavad Artiklid...