• DİKKAT

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

sayfa sildirmek için kod denemesi

  • Konbuyu başlatan Konbuyu başlatan travman
  • Başlangıç tarihi Başlangıç tarihi
Katılım
7 Aralık 2010
Mesajlar
9
Excel Vers. ve Dili
2007
Arkadaşlar herkese merhaba;

Bir excel sayfasında sayfa1....sayfa25 adet sayfadan benim seçtiklerim haricindekiler silinsin istiyorum.

Bir button koydum buna click leyince seçtiklerimi silsin istiyorum.Bunun için aşağıdaki kodu uygulamaya çalışıyorum ama hata veriyor.Ya sadece 3-4 sayfayı siliyor yada hata veriyor.

Alternatif bir kod yada bu kodu düzeltmeye yardımlarınızı bekliyorum.

Şimdiden teşekkürler....



Private Sub CommandButton1_Click()
If CheckBox1.Value = False Then
Worksheets("sayfa1").Delete
If CheckBox2.Value = False Then
WorksSheets("sayfa2").Delete
If CheckBox3.Value = False Then
WorksSheets("sayfa3").Delete
.........................................

If CheckBox4.Value = False Then
WorksSheets("sayfa25").Delete
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
CIHAZLIST.Hide
End Sub
 
Merhaba,

Sorunuzu küçük bir örnek dosya ekleyerek açıklarmısınız.
 
10 sayfa silme örneği verdim örneği artırabilirsiniz dosyanız ektedir
 

Ekli dosyalar

Öncelikle Teşekkür ederim ilginize...

Problemim şu: Ekteki dosyada göreceğiniz gibi checkbox lar var.

1 nolu checkbox---sayfa1
2 nolu checkbox---sayfa2
...........
7 nolu checkbox---sayfa7 temsil ediyor.

Örneğin 1 ve 6 nolu checkbox işaretli ise 2,3,4,5,7 sayfaların silinmesi.

Teşekkürler...
 

Ekli dosyalar

Prens24 arkadaşım teşekkürler ama tam istediğim değil gibi.Şöyle ki 3,5,7 seçiyorum sadece 3 kalıyor diğerlerini siliyor.

Teşekkürler ilginize...
 
kontrol ettim herhangi bir sorun yok seçili checkbox seçili değilse sayfa siliniyor
 
evet evet oldu bende de şimdi.İş yerindeki bilg. olmamıştı ama evde oluyor :)

Teşekkürler çözüm tamamdır :)
 
Merhaba,

Alternatif olsun.

Kod:
Private Sub CheckBox100_Click()
    Dim cb  As Object
    Dim i   As Integer
    
    On Error Resume Next
    
    For Each cb In UserForm1.Controls
         If TypeOf cb Is msforms.CheckBox Then
            i = i + 1
            If i > 25 Then Exit For
            With cb
                If Not i > Sheets.Count Then .Caption = Sheets(i).Name
                .Value = CheckBox100.Value
            End With
         End If
    Next
End Sub

Kod:
Private Sub CommandButton1_Click()
    'Seçili Olmayan Sayfalar Silinir
    On Error GoTo Son
    
    Dim i       As Integer
    Dim syf()   As String
    Dim cb      As Object
    
    For Each cb In UserForm1.Controls
    
         If TypeOf cb Is msforms.CheckBox Then
         
            If cb.Visible = True Then
                If cb.Value = False Then
                    i = i + 1
                    ReDim Preserve syf(1 To i)
                    syf(i) = cb.Caption
                End If
            End If
                        
         End If
    Next
    
    Application.DisplayAlerts = False
    
    If i > 0 Then Sheets(syf).Delete
    Application.DisplayAlerts = True
    
Son:
End Sub

Kod:
Private Sub CommandButton2_Click()
    Unload Me
End Sub

Kod:
Private Sub UserForm_Initialize()
    Dim cb  As Object
    Dim i   As Integer
    
    For Each cb In UserForm1.Controls
    
         If TypeOf cb Is msforms.CheckBox Then
            i = i + 1
            If i > 30 Then Exit For
            
            With cb
            
                If Not i > Sheets.Count Then
                    .Caption = Sheets(i).Name
                Else
                    cb.Visible = False
                End If
                
            End With
            
         End If
    Next
       
    CheckBox100.Value = True
    
End Sub
 

Ekli dosyalar

Geri
Üst