Vba kullanarak bir sayfayı nasıl gizleyebilirim/gösterebilirim?

Excel’de bir sayfayı gizlemek veya göstermek için VBA kodunu kullanabilirsiniz. Sayfa sekmesine sağ tıkladığınızda, onu gizleme veya gösterme seçeneğini ve VBA koduyla yapabileceğiniz şeyin aynısını görebilirsiniz.

Bu yazıda kullanabileceğimiz bazı yol ve yöntemlere bakacağız.

Bir sayfayı gizlemek için VBA kodu

Diyelim ki “Sayfa1″i etkin çalışma kitabından gizlemek istiyorsunuz. Bu durumda şu şekilde bir kod kullanmalısınız.

 Sheets("Sheet1").Visible = False

Yukarıdaki kodda Sayfa1’e referans verdiniz, görünür özelliğini kullandınız ve onu false olarak değiştirdiniz.

Bir yaprağı çok gizli yap

Kullanıcı tarafından kolaylıkla gizlenemeyecek kadar gizli bir sayfa oluşturmak için kullanabileceğiniz başka bir seçenek daha vardır.

Bir hücrenin değerine göre bir sayfayı gizleme

Tamam, kodda doğrudan sayfa adını kullanmak yerine bir hücre değeri kullanmak istiyorsanız bu hücreye başvurabilirsiniz.

 Sheets(Range("A1").Value).Visible = True

Bu kod, A1 hücresine başvurur ve gizlemek istediğiniz sayfaya başvurmak için buradaki değeri kullanır.

Yararlı bağlantılar: Makro çalıştırmaMakro kaydediciVisual Basic DüzenleyiciKişisel Makrolar El Kitabı

Saklamadan önce sayfayı kontrol edin

Çıktılarını gizlemek istediğiniz sayfayı kontrol etmek için bunun gibi küçük bir kod da kullanabilirsiniz.

 Sub vba_hide_sheet() Dim sht As Worksheet For Each sht In ThisWorkbook.Worksheets If sht.Name = "Sheet1" Then sht.Visible = False Exit Sub End If Next sht MsgBox "Sheet not found", vbCritical, "Error" End Sub

Yukarıdaki kod, çalışma kitabındaki her sayfada döngü yapmak için FOR ECH LOOP + IF STATEMENT işlevini kullanır. Ve gizlemek istediğiniz sayfayı kontrol edin.

Tüm sayfaları gizle (ActiveSheet hariç)

Şimdi anlamanız gereken bir şey var; tüm yaprakları gizleyemezsiniz. Her zaman görünür bir yaprak olmalıdır.

 Sub vba_hide_sheet() Dim ws As Worksheet For Each ws In ThisWorkbook.Sheets If ActiveSheet.Name <> ws.Name Then ws.Visible = False End If Next ws End Sub

Yukarıdaki kod, çalışma kitabındaki tüm sayfaları yineler, ardından her sayfanın adını etkin sayfanın adıyla eşleştirir ve eşleşmezse gizler.

Bir sayfayı görüntülemek için VBA kodu

Bir sayfayı görüntülemek için görünür özelliğini TRUE olarak değiştirmeniz gerekir.

 Sheets("Sheet1").Visible = False

Görüntülemek istediğiniz sayfa zaten görünür durumdaysa bu kod herhangi bir hata göstermez. Ancak bu sayfa mevcut değilse çalışma zamanı hatası ‘9’ alırsınız.

vba-kodu-bir-sayfayı-göstermek için

Tüm gizli sayfaları göstermek için VBA’yı kullanın

Bir çalışma kitabında birden fazla gizli sayfanız olduğunu ve bunları manuel olarak gizlemek istiyorsanız bunu tek tek yapmanız gerektiğini düşünün.

Ancak işte bunu tek seferde yapan kod.

 Sub vba_unhide_sheet() Dim ws As Worksheet For Each ws In ThisWorkbook.Sheets If ws.Visible = False Then ws.Visible = True End If Next ws End Sub

Her yaprağın içinden geçer ve maskesini çıkarır.

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir