• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Birden fazla sayfayı göster/sil

Katılım
30 Eylül 2016
Mesajlar
53
Excel Vers. ve Dili
Excel Standart 2016 x64 TR
Merhaba arkadaşlar, çalışmış olduğum 100 sayfası olan bir çalışma kitabım var. İstediğim ise bu çalışma kitabındaki tüm gizli sekmeleri gösterip silecek bir kod.
Normalde Sheets(Array("Sayfa2", "Sayfa3", "Sayfa4", .....)).Visible = True ise göstermeyi denedim olmadı. Yine buna benzer olarak Sheets(Array("Sayfa2", "Sayfa3", "Sayfa4", .....)).Delete denedim bu da olmadı. Konu hakkında yardımcı olursanız memnun olurum.
 
Sayfaları göstermek için:
for i = 1 to sheets.count
sheets(i).visible = true
next

Sayfaları silmek için (dikkat tüm sayfalar silinir):
for i = 1 to sheets.count
sheets(i).delete
next

Gizli sayfaları silmek için :
for i = 1 to sheets.count
if sheets(i).visible = true then
sheets(i).delete
end if
next
 
Bu şekilde deneyiniz.
Kod:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
Cancel = True
Dim s As Worksheet
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each s In Application.ActiveWorkbook.Worksheets
s.Visible = 1
If s.Name <> "Sayfa1" Then
s.Delete
End If
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
 
Sayfaları göstermek için:
for i = 1 to sheets.count
sheets(i).visible = true
next

Sayfaları silmek için (dikkat tüm sayfalar silinir):
for i = 1 to sheets.count
sheets(i).delete
next

Gizli sayfaları silmek için :
for i = 1 to sheets.count
if sheets(i).visible = true then
sheets(i).delete
end if
next


Öncelikle cevaplarınız için teşekkürler. Sayın Yusuf bey sayfaları gösterme kodu ve tüm sayfaları silme kodu çalışıyor fakat gizli sekmeleri silme kodu problemli çalışıyor. Aktif olan sekmeyi silip diğer sekmeleri gizliyor ve Subscript out of range hatası veriyor. Ben mi yanlış birşey yapıyorum acaba?
 
Kusura bakmayın, O kodu yanlış yazmışım. Normalde silme işlemlerinde baştan sona değil sondan başa yapılması gerekir ki silinen sayfalar kod düzenini bozmasın. Bir de visible = true şeklinde yazmışım, bu gizli değilse sil anlamına geliyor, halbuki false olmalıydı.

Şöyle deneyin:

PHP:
Sub sil()
    For i = Sheets.Count To 1 Step -1
        If Sheets(i).Visible = False Then
            Sheets(i).Delete
        End If
    Next
End Sub
 
Çok teşekkür ederim Yusuf bey şimdi istediğim gibi oldu. Elinize emeğinize sağlık. İyi çalışmalar dilerim.
 
Geri
Üst