VBA įterpti stulpelius | Kaip įterpti stulpelį „Excel“ darbalapyje su VBA?

Paprastai „Excel“ darbalapyje mes turime du skirtingus stulpelių pridėjimo ar įterpimo būdus, vienas yra klaviatūros spartusis klavišas, kitas - naudojant dešiniuoju pelės mygtuku spustelėkite ir įterpimo metodą, tačiau VBA turime naudoti komandą „insert“ ir visą stulpelio teiginį, kad pridėtumėte bet kurį stulpelį, Apgaulė yra ta, kad jei mums reikia įterpti vieną stulpelį, mes pateikiame vieno stulpelio nuorodą, bet keliems stulpeliams - kelias stulpelių nuorodas.

Įterpkite stulpelius į „Excel“ naudodami VBA

Kaip VBA kodo dalį, mums gali tekti į duomenų lapą įterpti keletą stulpelių, kad atitiktų mūsų poreikius. Stulpelio įterpimas yra paprastas spartusis klavišas darbalapyje, paspaudus „ Ctrl +“, bet kaip apie naujo stulpelio įterpimą per VBA kodą. Šiame straipsnyje „VBA įterpti stulpelį“ parodysime stulpelių įtraukimo į „Excel“ procesą ir pateiksime skirtingų scenarijų pavyzdžių.

Kaip įterpti stulpelius į „Excel“ darbalapį naudojant VBA?

Mes galime įterpti stulpelius į VBA naudodami COLUMNS ypatybę ir RANGE objektą. Turite, kodėl mums reikia stulpelių ir diapazono objektų, norint įterpti naują stulpelį.

Norėdami įterpti naują stulpelį, turime nustatyti, po kurio stulpelio turime įterpti, nepasakydami, po kurio stulpelio turime įterpti, kaip VBA gali suprasti logiką.

Pavyzdžiui, jei norite įterpti stulpelį po B stulpelio, galite sukonstruoti tokį kodą.

Stulpeliai („C“)

Pastaba: Priežastis, kodėl aš naudoju C, norėdamas įterpti stulpelį, nes pasirinktas langelis bus perkeltas į dešinę pusę.

Nurodę stulpelius, turime pasiekti nuosavybę „Visas stulpelis“.

Stulpeliai („C“). „EntireColumn“

Tada turime pasirinkti metodą "Įterpti".

Stulpeliai („C“). „EntireColumn“. Įterpti

Tai įterps stulpelį po C stulpeliu, o esamas C stulpelis bus perkeltas į D skiltį.

1 pavyzdys - įterpkite stulpelius naudodami diapazono objektą VBA

Dabar pažvelkite į stulpelio įterpimo būdą naudojant objektą RANGE. Apsvarstykite toliau pateiktus pavyzdžio duomenis.

Dabar noriu VBA įterpti stulpelį po stulpeliu A, atlikite toliau nurodytus veiksmus, kad sukurtumėte kodą.

1 žingsnis: Pradėkite papildomą procedūrą.

2 žingsnis: Atidarykite objekto diapazoną .

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () diapazonas (pabaigos antrinis stulpelis 

3 žingsnis: Dabar paminėkite stulpelį dvigubomis kabutėmis .

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () Diapazonas ("B: B") Pabaiga 

4 žingsnis: Dabar pasirinkite „ Visas stulpelis“ ypatybę.

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () Diapazonas ("B: B"). Ent Pabaiga 

5 žingsnis: Pasirinkę ypatybę Visas stulpelis, pasirinkite metodą „Įterpti“ .

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () Diapazonas ("B: B"). EntireColumn.ins Pabaiga Sub 

Dabar jūsų kodas atrodo taip.

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () diapazonas („B: B“). „EntireColumn“. Įterpti pabaigos antrinę skiltį 

Paleiskite kodą, kuris įterps naują B stulpelį.

2 pavyzdys - įterpkite kelis stulpelius

Pvz., Jei po A stulpelio norite įterpti du naujus stulpelius, turime paminėti du stulpelių adresus.

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys1 () diapazonas („B: C“). „EntireColumn“. Įterpti pabaigos antrinę skiltį 

Minėtas kodas po A stulpelio įterps du stulpelius.

3 pavyzdys - naudojant tik metodą „Įterpti“

Mes galime įterpti naują stulpelį naudodami vienintelį metodą „Įterpti“, nepasiekdami visos savybės savybės. Tam supraskime metodo „įterpti“ sintaksę.

Išraiška. Įterpti ([Shift], [Copy Origin])

[Shift]: kai įterpiame naują stulpelį, ar mums reikia, kad stulpeliai pasislenka į dešinę pusę arba, jei eilučių, pasislinktų į žemyn. Čia galime naudoti dvi parinktis „xlToRight“ ir „xlDownTo“

[Kopijuoti kilmę]: tai nurodys naujai įterpto stulpelio formatą. Nesvarbu, ar jums reikia formato iš kairės stulpelio pusės, ar iš aukščiau nurodytų langelių. Čia galime naudoti dvi parinktis „xlFormatFromLeftOrAbove“ ir „xlFormatFromRightOrBelow“.

Žemiau pateikiamas jums pavyzdinis kodas.

 Antrinis stulpelis Įterpti_pavyzdys1 () Diapazonas ("B: B"). Įterpti Shift: = xlToRight, Copyorigin: = xlFormatFromLeftOrAbove End Sub 

4 pavyzdys - įterpkite stulpelius naudodami VBA ypatybę COLUMNS

Mes matėme, kaip VBA įterpti stulpelius naudojant objektą RANGE, dabar parodysime, kad galime įterpti stulpelius naudodami savybę „COLUMNS“.

Atidarykite ypatybę COLUMNS.

Kodas:

 Antrasis stulpelis Įterpti_pavyzdys2 () stulpeliai (pabaigos antrasis stulpelis) 

Stulpelį čia galime nurodyti dviem būdais. Vienas naudoja įprastas abėcėlės nuorodas, o kitas - stulpelių numerius.

Jei norite įterpti stulpelį po A stulpelio, kodas bus COLUMNS („B“). Jei naudojate skaitmeninę nuorodą, kodas bus COLUMNS (2).

Kodas:

Antrasis stulpelisĮterpti_pavyzdys2 () stulpeliai ("B"). Pabaigos sub

Dabar jums iškyla problema, nes naudodami COLUMNS nuosavybę mes negalime pasiekti „IntelliSense“ sąrašo.

Kodas:

 Antrasis stulpelisĮterpti_pavyzdys2 () stulpeliai ("B"). Viso pabaigos antrinis stulpelis 

Čia turime būti tikri, ką darome. Taigi pirmiausia aš jums parodžiau objektą RANGE.

Kodas:

 Antrasis stulpelisĮterpti_pavyzdys2 () stulpeliai („B: B“). „EntireColumn“. Įterpti pabaigos antrinį stulpelį 

5 pavyzdys - įterpkite alternatyvius stulpelius

Tarkime, kad turite tokių duomenų, kaip žemiau pateiktame paveikslėlyje.

Jei norite įterpti naujus stulpelius po kiekvienos pakaitinės eilutės, turime naudoti VBA kilpas. Žemiau kodą galite pritaikyti jums pritaikytu kodu.

Kodas:

 Sub ColumnInsert_Example3 () Dim k kaip sveikieji stulpeliai (2). Pasirinkite k = 2–8 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2). Pasirinkite Next k End Sub 

Taip bus įterptas stulpelis.

6 pavyzdys - įterpkite stulpelį pagal langelio vertę

Mes taip pat galime įterpti stulpelį pagal langelio vertę. Pavyzdžiui, pažiūrėkite į toliau pateiktus duomenis.

Čia noriu įterpti stulpelį, jei pirmosios eilutės langelio vertė yra „Metai“ ir mano duomenys turėtų tai patikti įterpus naujus stulpelius.

Norėdami atlikti šią užduotį, naudokite žemiau pateiktą kodą.

Kodas:

 Antrinis stulpelis Įterpti_pavyzdys4 () Dim k kaip sveikasis skaičius x x sveikasis skaičius x = 2 K = 2–12 If ląstelės (1, x) .Vertė = "Metai", tada ląstelės (1, x) .EntireColumn.Iterpti x = x + 1 Pabaiga Jei x = x + 1 Kitas k Pabaiga 

Šią „VBA Insert Columns Excel“ galite atsisiųsti čia. VBA įterpti stulpelių „Excel“ šabloną


$config[zx-auto] not found$config[zx-overlay] not found