Bagaimana cara menyisipkan baris menggunakan vba di excel?
Pada tutorial ini kita akan melihat cara menyisipkan baris atau kolom menggunakan kode VBA di Excel. Kami juga akan mengeksplorasi berbagai cara untuk menulis makro untuk ini.
Sisipkan satu baris menggunakan VBA
Untuk menyisipkan baris menggunakan kode VBA, Anda perlu menggunakan properti “Whole Row” dengan metode “Insert”. Dengan properti baris keseluruhan, Anda bisa mereferensikan seluruh baris menggunakan sel lalu menyisipkan baris baru di sana. Secara default, ini akan menyisipkan satu baris sebelum sel yang Anda sebutkan.
- Pertama, tentukan sel menggunakan objek rentang.
- Sekarang masukkan titik (.) untuk mendapatkan daftar properti dan metode.
- Setelah itu, pilih properti “Whole Row” atau masukkan.
- Terakhir, masukkan titik (.) lagi dan pilih metode “Sisipkan” atau ketik.
Range("A1").EntireRow.Insert
Kode Anda siap di sini untuk menyisipkan baris. Sekarang ketika Anda menjalankan kode ini, kode ini langsung menyisipkan baris baru sebelum sel A1.
Sisipkan beberapa baris
Ada dua cara untuk memasukkan beberapa baris ke dalam spreadsheet yang saya temukan. Yang pertama adalah metode penyisipan yang sama yang kita gunakan pada contoh di atas.
Dengan ini, Anda perlu menentukan rentang yang jumlahnya setara dengan jumlah baris yang ingin Anda sisipkan. Sekarang misalkan Anda ingin menyisipkan 5 baris setelahnya, dalam hal ini Anda bisa menggunakan kode seperti ini.
Sejujurnya, menurut saya metode ini tidak terlalu berguna karena Anda harus mengubah rentang jika ingin mengubah jumlah baris.
Jadi inilah metode kedua.
Dim iRow As Long Dim iCount As Long Dim i As Long iCount = InputBox(Prompt:="How many rows you want to add?") iRow = InputBox _ (Prompt:="After which row you want to add new rows? (Enter the row number") For i = 1 To iCount Rows(iRow).EntireRow.Insert Next i
Saat Anda menjalankan kode ini, ia meminta Anda memasukkan jumlah baris yang ingin Anda tambahkan dan kemudian nomor baris di mana Anda ingin menambahkan semua baris tersebut. Ia menggunakan loop FOR (For Next) untuk mengulang beberapa kali dan menyisipkan baris satu per satu.
Sisipkan baris berdasarkan nilai sel
Jika Anda ingin menyisipkan baris berdasarkan nilai sel , Anda dapat menggunakan kode berikut.
Dim iRow As Long Dim iCount As Long Dim i As Long iCount = Range("A1").Value iRow = Range("B1").Value For i = 1 To iCount Rows(iRow).EntireRow.Insert Next i
Saat Anda menjalankan makro ini, dibutuhkan jumlah baris dari sel A1 dan baris di mana Anda ingin menambahkan baris dari sel B1.
Sisipkan baris tanpa memformat
Saat Anda menyisipkan baris yang baris di atasnya memiliki format tertentu, dalam hal ini baris tersebut juga akan memiliki format tersebut secara otomatis. Dan cara termudah untuk menangani situasi ini adalah dengan menggunakan format yang jelas . Perhatikan kode berikut.
Rows(7).EntireRow.Insert Rows(7).ClearFormats
Saat Anda menjalankan kode di atas, baris baru akan disisipkan sebelum baris ke-7 . Sekarang yang terjadi, ketika Anda menyisipkan baris sebelum baris ke-7 , baris baru itu menjadi baris ke -7 , lalu baris kode kedua menghapus format baris tersebut.
Sisipkan baris yang disalin
Anda juga dapat menggunakan metode yang sama untuk menyalin sebuah baris dan kemudian menyisipkannya di tempat lain. Lihat kode berikut.
Application.CutCopyMode = False With Worksheets("Data") .Rows(5).Copy .Rows(9).Insert Shift:=xlShiftDown End With Application.CutCopyMode = True