Lembar Hapus VBA

Lembar Hapus VBA

Lembar Hapus Excel VBA

Kami menggunakan metode “Hapus Lembar Kerja” untuk menghapus lembar di VBA. Untuk menerapkan metode ini, pertama-tama kita perlu mengidentifikasi sheet mana yang akan kita hapus dengan memanggil nama sheet. Kami memiliki dua metode untuk melakukan hal yang sama. Pertama, kita langsung menulis sheet1.delete; metode kedua adalah sheets(sheet1).delete.

Jadi, sintaks berikut.

Lembar Kerja(“Nama Lembar Kerja”).Hapus

ATAU

Sheets(“Nama Sheet”).Hapus

Jadi, pertama, kita perlu menentukan nama sheet dengan menggunakan Worksheet atau Sheets Object, kemudian kita bisa menggunakan metode ‘Delete’ .

templat , dll., Harap berikan kami tautan atribusi

Bagaimana Cara Menghapus Lembar Excel menggunakan Kode VBA?

Contoh #1 – Hapus Lembar Kerja dengan menggunakan Namanya

Asumsikan Anda memiliki banyak lembar. Kita perlu menyebutkan nama lembar kerja untuk menghapus lembar kerja tertentu. Misalnya, kami memiliki 3 lembar berbeda bernama “Penjualan 2016”, “Penjualan 2017”, dan “Penjualan 2018”.

Jika kita ingin menghapus sheet yang bernama “ Sales 2017 ”, maka kita harus menyebutkan nama sheet seperti di bawah ini.

Kode:

Sub Delete_Example1() Lembar Kerja(“sheets 2017”). Akhir Sub

Masalah dengan menyebutkan nama lembar kerja adalah kita tidak dapat melihat daftar VBA IntelliSense. Jadi, bagaimanapun, sebutkan metodenya sebagai ” Hapus.”

Kode:

Sub Delete_Example1() Worksheets(“sheets 2017”).Delete End Sub

Jadi ini akan menghapus sheet bernama ‘ Sales 2017 ‘.

Kesalahan Saat Menghapus Lembar Kerja: Jika kami mencoba menghapus lembar kerja yang tidak ada atau salah menyebutkan nama lembar kerja, kami akan mendapatkan kesalahan VBA sebagai “Subskrip Di Luar Jangkauan”.

Di atas, kami mendapatkan kesalahan ‘ Subscript Out of Range ‘ karena, di buku kerja kami, tidak ada nama sheet yang disebut “Sales 2017”.

Contoh #2 – Hapus Lembar Kerja dengan Namanya dengan Variabel

Seperti yang telah kita lihat pada contoh di atas, saat kita mengacu pada nama worksheet dengan menggunakan objek Worksheet, kita tidak dapat melihat daftar IntelliSense. Untuk melihat daftar IntelliSense, kita perlu menggunakan variabel.

Langkah 1: Pertama, deklarasikan variabel sebagai Worksheet .

Kode:

Sub Delete_Example2() Dim Ws Sebagai Worksheet End Sub

Langkah 2: Karena lembar kerja adalah variabel objek, kita perlu mengatur variabel ke lembar kerja tertentu menggunakan kata ‘ SET ‘.

Kode:

Sub Delete_Example2() Dim Ws As Worksheet Set Ws = Worksheets(“Sales 2017”) End Sub

Variabel “Ws” mengacu pada lembar kerja “Sales 2017”.

Langkah 3: Sekarang, dengan menggunakan variabel ‘ Ws ‘, kita dapat mengakses semua daftar lembar kerja IntelliSense.

Kode:

Sub Delete_Example2() Dim Ws As Worksheet Set Ws = Worksheets(“Sales 2017”) Ws. Akhir Sub

Langkah 4: Dari daftar IntelliSense, pilih metode ‘ Hapus ‘.

Kode:

Sub Delete_Example2() Dim Ws As Worksheet Set Ws = Worksheets(“Sales 2017”) Ws.Delete End Sub

Seperti ini, dengan menggunakan variabel, kita dapat mengakses daftar IntelliSense.

Contoh #3 – Hapus Lembar Kerja Aktif

ActiveSheet tidak lain adalah lembar kerja mana saja yang aktif atau dipilih saat ini. Untuk metode ini, kita tidak perlu menyebutkan nama lembar kerja. Sebagai contoh, lihat kode VBA Kode VBA CodeVBA mengacu pada serangkaian instruksi yang ditulis oleh pengguna dalam bahasa pemrograman Visual Basic Applications pada Visual Basic Editor (VBE) untuk melakukan tugas tertentu.Baca lebih lanjut.

Lembar Aktif.Hapus

Saat ini, sheet yang aktif adalah ‘Sales 2017’.

Jika kami menjalankan kode, itu akan menghapus lembar aktif, “Penjualan 2017.”

Sekarang, kita akan memilih “Sales 2016.”

Sekarang, itu akan menghapus lembar aktif, “Penjualan 2016.”

Seperti ini, kita bisa menggunakan objek “Lembar Aktif” untuk menghapus lembar kerja.

Catatan: Untuk menggunakan metode ini, kita harus yakin apa yang kita lakukan dengan ActiveSheet dan sheet mana yang akan aktif.

Contoh #4 – Hapus Lebih dari Satu Lembar Kerja

Dalam contoh kami di atas, kami telah melihat cara menghapus satu lembar kerja, tetapi bagaimana jika kami memiliki banyak lembar kerja? Misalnya, katakanlah kita ingin menghapus 10 lembar kerja.

Kami tidak dapat terus menulis 10 baris kode untuk menghapus lembar kerja, jadi kami perlu menggunakan loop untuk mengulang kumpulan lembar kerja dan menghapusnya.

Kode di bawah ini akan mengulang lembar kerja dan menghapus semua lembar kerja di buku kerja.

Kode:

Sub Delete_Example2() Dim Ws Sebagai Worksheet Untuk Setiap Ws Di ActiveWorkbook.Worksheets Ws.Delete Next Ws End Sub

Kode di atas akan menimbulkan kesalahan karena mencoba menghapus semua lembar di buku kerja. Jadi, untuk menghindari hal ini, kita perlu menyimpan setidaknya satu lembar kerja.

Jika kita ingin menghapus semua lembar kerja kecuali lembar aktif, maka kita perlu menggunakan kode di bawah ini.

Kode:

Sub Delete_Example2() Redupkan Ws Sebagai Worksheet Untuk Setiap Ws Di ActiveWorkbook.Worksheets If ActiveSheet.Name <> Ws.Name Then Ws.Delete End If Next Ws End Sub

Demikian pula, kita dapat menggunakan kode di bawah ini jika kita tidak ingin menghapus lembar kerja tertentu tetapi semua lembar kerja lainnya.

Kode:

Sub Delete_Example2() Dim Ws Sebagai Worksheet Untuk Setiap Ws Di ActiveWorkbook.Worksheets If Ws.Name <> “Sales 2018” Kemudian ‘Anda dapat mengubah nama worksheet Ws.Delete End If Next Ws End Sub

Kode di atas akan menghapus semua lembar kerja kecuali lembar kerja bernama ‘Sales 2018.’

Artikel yang Direkomendasikan

Artikel ini telah menjadi panduan untuk Lembar Hapus VBA. Di sini, kita belajar cara menghapus lembar kerja menggunakan pengkodean VBA, contoh praktis, dan template Excel yang dapat diunduh. Anda juga dapat melihat artikel lain yang terkait dengan Excel VBA: –

  • Apa itu Kotak Pesan VBA (Ya/Tidak)?
  • File Hapus VBA
  • Hapus Baris di VBA
  • Lindungi Lembar dengan Excel VBA
  • VBA ByRef

Related Posts

Tinggalkan Balasan