Kolom Sisipkan VBA

Biasanya di lembar kerja excel kami memiliki dua metode berbeda untuk menambahkan atau menyisipkan kolom satu menjadi pintasan keyboard dan lainnya dengan menggunakan metode klik kanan dan sisipkan tetapi di VBA kita harus menggunakan perintah sisipkan dan seluruh pernyataan kolom untuk menambahkan kolom apa pun bersama-sama, Trik untuk ini adalah bahwa jika kita perlu memasukkan satu kolom kita memberikan referensi kolom tunggal tetapi untuk beberapa kolom kita memberikan referensi beberapa kolom.

Masukkan Kolom di Excel menggunakan VBA

Sebagai bagian dari kode VBA, kita mungkin perlu memasukkan beberapa kolom di lembar data kita agar sesuai dengan kebutuhan kita. Menyisipkan kolom adalah tombol pintas yang mudah di lembar kerja dengan menekan Ctrl + tetapi bagaimana dengan memasukkan kolom baru melalui kode VBA. Pada artikel tentang "VBA Insert Column" ini, kami akan menunjukkan kepada Anda proses penambahan kolom di excel dan akan menunjukkan kepada Anda contoh skenario yang berbeda.

Bagaimana cara menyisipkan kolom di lembar kerja Excel menggunakan VBA?

Kita bisa menyisipkan kolom di VBA menggunakan properti COLUMNS dan objek RANGE. Anda harus mengapa kita membutuhkan kolom dan objek rentang untuk menyisipkan kolom baru.

Untuk menyisipkan kolom baru, kita perlu mengidentifikasi kolom mana yang perlu kita masukkan, tanpa memberi tahu kolom mana yang perlu kita masukkan bagaimana VBA dapat memahami logikanya.

Misalnya, jika Anda ingin menyisipkan kolom demi kolom B maka Anda dapat membuat kode seperti ini.

Kolom ("C")

Catatan: Alasan mengapa saya menggunakan C untuk menyisipkan kolom setelahnya karena sel yang dipilih akan digeser ke sisi kanan.

Setelah kolom ditentukan, kita perlu mengakses properti "Seluruh Kolom".

Kolom ("C"). Seluruh Kolom

Kemudian kita perlu memilih metode "Sisipkan".

Kolom ("C"). Seluruh Kolom.Insert

Ini akan memasukkan kolom setelah kolom C dan kolom C yang ada akan dipindahkan ke D.

Contoh # 1 - Sisipkan Kolom Menggunakan Objek Rentang di VBA

Sekarang, lihat cara memasukkan kolom menggunakan objek RANGE. Untuk ini pertimbangkan data di bawah ini sebagai contoh.

Sekarang saya ingin memasukkan kolom VBA setelah kolom A, ikuti langkah-langkah di bawah ini untuk membuat kode.

Langkah 1: Mulailah Sub Prosedur.

Langkah 2: Buka objek Rentang .

Kode:

 Sub ColumnInsert_Example1 () Range (End Sub 

Langkah 3: Sekarang sebutkan kolom dalam tanda kutip ganda .

Kode:

 Sub ColumnInsert_Example1 () Range ("B: B") End Sub 

Langkah 4: Sekarang pilih properti Seluruh Kolom .

Kode:

 Sub ColumnInsert_Example1 () Range ("B: B"). Ent End Sub 

Langkah 5: Setelah memilih properti Seluruh Kolom, pilih metode "Sisipkan" .

Kode:

 Sub ColumnInsert_Example1 () Range ("B: B"). Seluruh Kolom.ins End Sub 

Sekarang kode Anda terlihat seperti ini.

Kode:

 Sub ColumnInsert_Example1 () Range ("B: B"). Keseluruhan Kolom.Insert End Sub 

Jalankan kode itu akan memasukkan kolom B baru.

Contoh # 2 - Sisipkan Banyak Kolom

Misalnya, jika Anda ingin memasukkan dua kolom baru setelah kolom A maka kami perlu menyebutkan dua alamat kolom.

Kode:

 Sub ColumnInsert_Example1 () Range ("B: C"). Seluruh Kolom. Sisipkan Akhir Sub 

Kode di atas akan menyisipkan dua kolom setelah kolom A.

Contoh # 3 - Dengan Metode "Sisipkan" Saja

Kita dapat menyisipkan kolom baru dengan menggunakan metode "Sisipkan" satu-satunya tanpa mengakses properti Seluruh Kolom. Untuk ini mari kita pahami sintaks metode "sisipkan".

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

[Shift]: Saat kita menyisipkan kolom baru apakah kita membutuhkan kolom untuk bergeser ke sisi kanan atau untuk bergeser ke sisi bawah dalam kasus baris. Di sini kita dapat menggunakan dua opsi "xlToRight" dan "xlDownTo"

[Salinan Asal]: Ini akan menentukan format untuk kolom yang baru disisipkan. Apakah Anda memerlukan format dari sisi kiri kolom atau dari sel di atas. Di sini kita dapat menggunakan dua opsi “xlFormatFromLeftOrAbove” dan “xlFormatFromRightOrBelow”.

Di bawah ini adalah contoh kode untuk Anda.

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

Contoh # 4 - Sisipkan Kolom Menggunakan Properti KOLOM di VBA

Kita telah melihat bagaimana VBA menyisipkan kolom menggunakan objek RANGE, sekarang kita akan menunjukkan bahwa kita dapat menyisipkan kolom menggunakan properti "COLUMNS".

Buka properti COLUMNS.

Kode:

 Sub ColumnInsert_Example2 () Kolom (End Sub 

Kami dapat menentukan kolom dengan dua cara di sini. Satu menggunakan referensi alfabet seperti biasa dan satu lagi menggunakan nomor kolom.

If you want to insert the column after the 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 to 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. Below code it the tailor-made the code for you.

Code:

 Sub ColumnInsert_Example3() Dim k As Integer Columns(2).Select For k = 2 To 8 ActiveCell.EntireColumn.Insert ActiveCell.Offset(0, 2).Select Next k End Sub 

This will insert the column like this.

Example #6 – Insert Column Based on Cell Value

We can also insert a column based on cell value as well. For example, look at the below data.

Here I want to insert the column if the first-row cell value is “Year” and my data should like this after inserting new columns.

Use the below code to perform this task.

Code:

 Sub ColumnInsert_Example4() Dim k As Integer Dim x As Integer x = 2 For k = 2 To 12 If Cells(1, x).Value = "Year" Then Cells(1, x).EntireColumn.Insert x = x + 1 End If x = x + 1 Next k End Sub 

You can download this VBA Insert Columns Excel here. VBA Insert Columns Excel Template