Setelah
Contoh Aplikasi Raport yang Sudah Jadi
dirilis, saya menerima banyak email dari pembaca yang bertanya bagaimana caranya agar hanya satu sheet yang tampil di layar, seperti yang terlihat pada tampilan file raport tersebut.
Untuk mempermudah penjelasannya, posting kali ini akan membahas cara mengatur tampilan sheet di Excel menggunakan VBA.
Jenis "Penampakan" (Visibility) Sheet dalam VBA
Dalam VBA, "penampakan" (visibility) suatu sheet memiliki tiga jenis:
- xlSheetVisible
Sheet tampil seperti biasa. Kode VBA: -1
- xlSheetHidden
Sheet disembunyikan biasa. Bisa dimunculkan kembali melalui klik kanan > Unhide. Kode VBA: 0
- xlSheetVeryHidden
Sheet disembunyikan khusus dan tidak bisa dimunculkan lewat Unhide. Harus melalui VBA Editor. Kode VBA: 2
Contoh Kode VBA untuk Mengatur Penampakan Sheet
Menyembunyikan Sheet1
dengan metode Very Hidden:
Sheets("Sheet1").Visible = 2
' atau:
Sheets("Sheet1").Visible = xlSheetVeryHidden
Menampilkannya kembali:
Sheets("Sheet1").Visible = -1
' atau:
Sheets("Sheet1").Visible = xlSheetVisible
Bagaimana Cara Menyembunyikan Banyak Sheet Sekaligus?
Untuk menyembunyikan beberapa sheet dalam satu klik saja, ikuti langkah-langkah berikut:
- Tampilkan terlebih dahulu sheet yang akan ditampilkan.
- Semua sheet selain yang ditampilkan disembunyikan menggunakan prosedur looping.
Misalnya, hanya ingin menampilkan "Sheet2" dari total 20 sheet:
Sub TampilkanSheet2()
Dim sh As Worksheet
Sheets("Sheet2").Visible = -1
For Each sh In ThisWorkbook.Worksheets
If sh.Name <> "Sheet2" Then
sh.Visible = xlSheetVeryHidden
End If
Next sh
End Sub
Bagaimana Jika Nama Sheet yang Ditampilkan Berubah-ubah?
Buat prosedur VBA yang menerima nama sheet sebagai parameter:
Private Sub SembunyikanSemuaSheetKecualiAku(NamaSheet As String)
Dim sh As Worksheet
Sheets(NamaSheet).Visible = -1
For Each sh In ThisWorkbook.Worksheets
If sh.Name <> NamaSheet Then
sh.Visible = xlSheetVeryHidden
End If
Next sh
End Sub
Untuk menampilkan hanya Sheet2:
Call SembunyikanSemuaSheetKecualiAku("Sheet2")
Bagaimana Cara Menampilkan Semua Sheet Sekaligus?
Gunakan makro berikut:
Sub TampilkanSemuaSheet()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Worksheets
sh.Visible = xlSheetVisible
Next sh
End Sub
Kode ini akan menampilkan semua sheet, termasuk yang disembunyikan dengan metode Very Hidden.
Download Contoh File
File contoh bisa diunduh di sini