VBA lisage veerud | Kuidas lisada VBA-ga Exceli töölehe veerg?

Tavaliselt on Exceli töölehel veergude lisamiseks või sisestamiseks kaks erinevat meetodit, millest üks on klaviatuuri otsetee ja teine, kasutades paremklõpsamise ja lisamise meetodit, kuid VBA-s peame veeru koos lisamiseks kasutama käsku insert ja kogu veerulauset, Selle trikk on see, et kui peame sisestama ühe veeru, anname ühe veeru viite, kuid mitme veeru puhul mitu veergu.

Lisage VBA abil Exceli veerud

VBA-koodi osana peame oma vajadustele vastamiseks lisama mõned veerud oma andmelehele. Veeru sisestamine on töölehel lihtne kiirklahv, vajutades klahvikombinatsiooni Ctrl +, kuid kuidas oleks uue veeru sisestamiseks VBA-koodi kaudu. Selles artiklis VBA veeru lisamise kohta näitame teile Excelis veergude lisamise protsessi ja näiteid erinevate stsenaariumide kohta.

Kuidas lisada VBA abil Exceli töölehte veerge?

VBA-sse saab veerge lisada, kasutades atribuuti COLUMNS ja objekti RANGE. Peate, miks vajame uue veeru sisestamiseks veerge ja vahemiku objekte.

Uue veeru sisestamiseks peame tuvastama, millise veeru järel peame lisama, ütlemata, millise veeru järele peame lisama, kuidas VBA saab loogikast aru.

Näiteks kui soovite lisada veeru veeru B järele, saate selle koodi koostada niimoodi.

Veerud (“C”)

Märkus. Põhjus, miks ma kasutasin veeru sisestamiseks C-d, kuna valitud lahter nihutatakse paremale küljele.

Pärast veergude täpsustamist peame juurde pääsema atribuudile „Kogu veerg“.

Veerud (“C”). EntireColumn

Siis peame valima meetodi "Sisesta".

Veerud (“C”). EntireColumn.Insert

See lisab veeru C veeru järele ja olemasolev veerg C teisaldatakse D-i.

Näide # 1 - lisage VBA-sse Range Object abil veerud

Nüüd vaadake veeru sisestamise viisi objekti RANGE abil. Selle jaoks kaaluge näiteks allpool toodud andmeid.

Nüüd tahan, et VBA sisestaks veeru veeru A järele, järgige koodi koostamiseks järgmisi samme.

1. samm: alustage alammenetlust.

2. samm: avage objekt Range .

Kood:

 Alamveerg Lisage_näide1 () vahemik (lõpp-alam 

3. samm: mainige veergu nüüd jutumärkides .

Kood:

 AlamveergSisesta_näide1 () Vahemik ("B: B") Lõpp alam 

4. samm: valige nüüd omadus Kogu veerg .

Kood:

 Alamveerg Lisage_näide1 () vahemik ("B: B"). End End Sub 

5. samm: pärast atribuudi Kogu veerg valimist valige meetod „Lisa” .

Kood:

 Alamveerg Lisage_näide1 () vahemik ("B: B"). EntireColumn.ins End Sub 

Nüüd näeb teie kood välja selline.

Kood:

 AlamveergInsert_Example1 () Range ("B: B"). EntireColumn.Insert End Sub 

Käivitage kood, see lisab uue veeru B.

Näide # 2 - sisestage mitu veergu

Näiteks kui soovite veeru A järele lisada kaks uut veergu, peame mainima kaks veeru aadressi.

Kood:

 AlamveergInsert_Example1 () Range ("B: C"). EntireColumn.Insert End Sub 

Ülaltoodud kood lisab veeru A järele kaks veergu.

Näide # 3 - ainult meetodi „Sisesta” abil

Uue veeru saab sisestada, kasutades ainsat meetodit „Sisesta”, ilma et pääseksime juurde atribuudile Kogu veerg. Selle jaoks mõistame meetodi "sisesta" süntaksit.

Avaldis. Sisesta ([Tõstuklahv], [Kopeeri päritolu])

[Shift]: Kui lisame uue veeru, kas meil on vaja veerge paremale küljele nihutamiseks või ridade korral nihutamiseks negatiivsele küljele. Siin saame kasutada kahte võimalust "xlToRight" ja "xlDownTo"

[Kopeeri päritolu]: see määrab äsja sisestatud veeru vormingu. Kas vajate vormingut veeru vasakust servast või ülaltoodud lahtritest. Siin saame kasutada kahte valikut “xlFormatFromLeftOrAbove” ja “xlFormatFromRightOrBelow”.

Allpool on teie näidiskood.

 Alamveerg Lisage_näide1 () vahemik ("B: B"). Sisestage tõstuklahv: = xlToRight, Copyorigin: = xlFormatFromLeftOrAbove End Sub 

Näide # 4 - lisage veerud VBA atribuudi COLUMNS abil

Oleme näinud, kuidas VBA veerge objekti RANGE abil lisada, nüüd näitame, et veerge saab sisestada atribuudi “COLUMNS” abil.

Avage atribuut COLUMNS.

Kood:

 AlamveergSisesta_näide2 () veerud (lõpp-alamveerg 

Siin saame veeru täpsustada kahel viisil. Üks kasutab tavapäraseid tähestikulisi viiteid ja teine ​​veerunumbreid.

Kui soovite lisada veeru veeru A järele, on koodiks VEERUD (“B”). Kui kasutate numbrilist viidet, on koodiks VEERUD (2).

Kood:

AlamveergSisesta_näide2 () veerud ("B"). Lõpeta alam

Nüüd tekib teie jaoks probleem, sest kui kasutame vara COLUMNS, ei pääse me IntelliSense'i loendisse juurde.

Kood:

 AlamveergSisesta_näide2 () veergu ("B"). Kogu lõigu alamveerg 

Siin peame olema kindlad oma tegemistes. Nii et see on põhjus, miks ma näitasin teile kõigepealt objekti RANGE.

Kood:

 AlamveergInsert_Example2 () veerud ("B: B"). EntireColumn.Insert End Sub 

Näide # 5 - alternatiivsete veergude sisestamine

Oletame, et teil on andmed nagu alloleval pildil.

Kui soovite iga alternatiivse rea järele lisada uusi veerge, peame kasutama VBA-tsükleid. Koodi all on see teie jaoks kohandatud kood.

Kood:

 Alamveerg Sisesta_näide3 () Dim k täisarvu veergudena (2). Valige väärtus k = 2 kuni 8 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2). Valige Järgmine k End Sub 

See lisab veeru niimoodi.

Näide # 6 - lisage veerg lahtri väärtuse põhjal

Samuti võime veeru sisestada ka lahtri väärtuse põhjal. Näiteks vaadake allolevaid andmeid.

Siia tahan veeru lisada, kui esimese rea lahtriväärtus on „Aasta” ja minu andmed peaksid pärast uute veergude sisestamist sellised olema.

Selle ülesande täitmiseks kasutage allolevat koodi.

Kood:

 AlamveergIseta_näide4 () Mõõt k täisarvuna Dim x täisarvuna x = 2 k = 2 kuni 12 kui lahtrid (1, x). Väärtus = "Aasta", siis lahtrid (1, x). Sisestage veerg. Sisestage x = x + 1 Lõpp Kui x = x + 1 Järgmine k Lõpp alam 

Selle VBA Insert Columns Exceli saate alla laadida siit. VBA lisage veergude Exceli mall