VBA Вмъкване на колони - Как да вмъкнете колона в работен лист на Excel с VBA?

Обикновено в работния лист на Excel има два различни метода за добавяне или вмъкване на колони, като единият е клавишната комбинация, а другият с помощта на метода с десния бутон на мишката и вмъкването, но във VBA трябва да използваме командата за вмъкване и целия оператор на колона, за да добавим всяка колона заедно, трикът в това е, че ако трябва да вмъкнем една колона, ние даваме препратка към една колона, но за многото колони даваме няколко препратки към колона.

Поставете колони в Excel с помощта на VBA

Като част от кода на VBA, може да се наложи да вмъкнем няколко колони в нашия лист с данни, за да отговарят на нашите нужди. Вмъкването на колона е лесен клавиш за бърз достъп в работния лист чрез натискане на Ctrl +, но какво ще кажете за вмъкване на нова колона чрез VBA код. В тази статия за „Вмъкване на колона на VBA“ ще ви покажем процеса на добавяне на колони в Excel и ще ви покажем различни примери за сценарии.

Как да вмъкнете колони в работен лист на Excel с помощта на VBA?

Можем да вмъкнем колони във VBA, като използваме свойство COLUMNS и обект RANGE. Вие трябва защо се нуждаем от колони и обекти от диапазон, за да вмъкнем нова колона.

За да вмъкнем нова колона, трябва да идентифицираме след коя колона трябва да вмъкнем, без да казваме, след коя колона трябва да вмъкнем как VBA може да разбере логиката.

Например, ако искате да вмъкнете колоната след колона Б, тогава можете да изградите кода по този начин.

Колони („C“)

Забележка: Причината, поради която използвах C, за да вмъкна колона след това, защото избраната клетка ще бъде изместена в дясната страна.

След като колоните са посочени, трябва да осъществим достъп до свойството „Цяла колона“.

Колони („C“). Цяла колона

След това трябва да изберем метода „Вмъкване“.

Колони („C“). Цяла колона. Вмъкване

Това ще вмъкне колоната след колона C, а съществуващата колона C ще бъде преместена в D.

Пример # 1 - Вмъкване на колони с използване на обект за обхват във VBA

Сега вижте начина за вмъкване на колоната с помощта на обекта RANGE. За това разгледайте данните по-долу за пример.

Сега искам VBA да вмъкне колоната след колоната A, следвайте стъпките по-долу, за да изградите кода.

Стъпка 1: Започнете подпроцедурата.

Стъпка 2: Отворете диапазон обект.

Код:

Sub ColumnInsert_Example1 () Диапазон (Краен Sub

Стъпка 3: Сега споменете колоната в двойни кавички .

Код:

Sub ColumnInsert_Example1 () Диапазон ("B: B") Край Sub

Стъпка 4: Сега изберете свойството Цяла колона .

Код:

Sub ColumnInsert_Example1 () Диапазон ("B: B"). Ent Край Sub

Стъпка 5: След като изберете свойството Цяла колона, изберете метода „Вмъкване“ .

Код:

Sub ColumnInsert_Example1 () Диапазон ("B: B"). EntireColumn.ins End Sub

Сега вашият код изглежда така.

Код:

Sub ColumnInsert_Example1 () Диапазон ("B: B"). EntireColumn.Insert End Sub

Изпълнете кода. Той ще вмъкне новата колона B.

Пример # 2 - Вмъкване на няколко колони

Например, ако искате да вмъкнете две нови колони след колона А, тогава трябва да споменем адреси на две колони.

Код:

Sub ColumnInsert_Example1 () Диапазон ("B: C"). EntireColumn.Insert End Sub

Горният код ще вмъкне две колони след колона А.

Пример # 3 - Само с метод „Вмъкване“

Можем да вмъкнем нова колона, като използваме единствения метод „Вмъкване“ без достъп до свойството Цяла колона. За това нека разберем синтаксиса на метода „вмъкване“.

Expression.Insert ((Shift), (Copy Origin))

(Shift): Когато вмъкваме новата колона, независимо дали имаме нужда колоните да се изместят отдясно или да се изместят надолу в случай на редове. Тук можем да използваме две опции, “xlToRight” и “xlToRight”

(Copy Origin): This will specify the format for the newly inserted column. Whether you need the format from the left side of the column or from the above cells. Here we can use two options “xlFormatFromLeftOrAbove” and “xlFormatFromRightOrBelow”.

Below is the example code for you.

Sub ColumnInsert_Example1() Range("B:B").Insert Shift:=xlToRight, Copyorigin:=xlFormatFromLeftOrAbove End Sub

Example #4 - Insert Columns Using COLUMNS Property in VBA

We have seen how to VBA insert columns using the RANGE object; now, we will show we can insert columns using the “COLUMNS” property.

Open the COLUMNS property.

Code:

Sub ColumnInsert_Example2() Columns( End Sub

We can specify the column in two ways here. One is using as usual alphabetic references, and another one is using column numbers.

If you want to insert the column after column A, then the code will be COLUMNS(“B”). If you are using numerical reference, then the code will be COLUMNS(2).

Code:

Sub ColumnInsert_Example2() Columns("B"). End Sub

Now the problem for you arises because when we use COLUMNS property, we don’t get to access the IntelliSense list.

Code:

Sub ColumnInsert_Example2() Columns("B").Entir End Sub

Here we need to sure of what we are doing. So this is the reason I have showed you the RANGE object first.

Code:

Sub ColumnInsert_Example2() Columns("B:B").EntireColumn.Insert End Sub

Example #5 - Insert Alternative Columns

Assume you have the data like the below image.

If you want to insert new columns after every alternate row, then we need to use VBA loops. The below code it tailor-made the code for you.

Code:

Sub ColumnInsert_Example3 () Dim k As Integer Columns (2). Изберете за k = 2 до 8 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2). Изберете Next k End Sub

Това ще вмъкне колоната по този начин.

Пример # 6 - Вмъкване на колона въз основа на стойността на клетката

Също така можем да вмъкнем и колона въз основа на стойността на клетката. Например погледнете данните по-долу.

Тук искам да вмъкна колоната, ако стойността на клетката на първия ред е „Година“ и моите данни трябва да харесат това след вмъкване на нови колони.

Използвайте кода по-долу, за да изпълните тази задача.

Код:

Sub ColumnInsert_Example4 () Dim k As Integer Dim x As Integer x = 2 For k = 2 To 12 If Cells (1, x) .Value = "Year" Тогава клетки (1, x) .EntireColumn.Insert x = x + 1 End If x = x + 1 Next k End Sub

Можете да изтеглите този VBA Insert Columns Excel тук. VBA Вмъкване на колони Шаблон на Excel

Интересни статии...