rapor sayfasının makro ile silinmesini engellemek

Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn hocalarım herkese hayırlı günler

forumda aramama rağmen bir sonuca ulaşamadım.şöyle bi sorum olacak.
bir kitapta 5 farklı sayfa mevcut.1,2,3,4 ürün kartı olarak ayarlanmış.5.si ise
rapor sayfası.bu ürün kartlarını(sayfaları) makro ile listeden seçerek sildirebiliyorum.ancak 5.si yani rapor sayfasının yanlışlıkla silinmesinden korkuyorum.bu yüzden sadece rapor sayfasının silinmeye karşı kilitlenmesini istiyorum.sayfa gizlemeyi denedim o zaman da sayfayı aktif kullanamadım.
bu konuda yardımcı olacak arkadaşlara şimdiden teşekkür ederim.
saygılar:yardim:
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Silme işlemini yaptığınız kodları yazarsanız, üzerinde düzenleme yapılabilir.

Sayfa isimleri kontrol ederek silmek , Rapor sayfasını en başa alıp kalan sayfaları silmek gibi..
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
şöyle bir örnek ekliyeyim,,,

örnekte combobox1 de sayfalar sıralanmış durumda.bu sayfalardan 1,2 ve 3 ü silebilirim.ancak rapor sayfasını sil dediğim zaman bu sayfa silinemez gibi bir uyarı gelse veya silmeye karşı korunsa mesela.

teşekkürler
saygılar:yardim:
 
S

Skorpiyon

Misafir
Sayın olymposss,

Örnek dosyanızdaki kodu aşağıdaki gibi değiştirin. Sanırım işinizi görür.

Private Sub CommandButton1_Click()
Dim a As Long
Dim Cevap As Integer
Cevap = MsgBox(ComboBox1 & " kartını silmek istediğinizden emin misiniz?", vbInformation + vbYesNo, "PROGRAM")
If Cevap = 6 Then
If ComboBox1.Value = "rapor" Then
MsgBox "Üzgünüm bu sayfa silinemez."
Exit Sub
End If
ActiveWindow.SelectedSheets.Delete
ComboBox1.Clear
For a = 1 To Sheets.Count
ComboBox1.AddItem Sheets(a).Name
Next
MsgBox "kartınız silindi."
Else
Exit Sub
End If
End Sub

Saygılarımla...
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn sertkaya çok teşekkür ederim ilginize
ancak if then ile değilde başka bir yolu varsa onu öğrenmek istiyorum.doğrudan kilitleme vb.if ile kodlar çoğalıyor ve zaman kaybediyorum.
teşekkürler
saygılar

not:aslında rapor comboboxta hiç listelenmese daha iyi olacak gibi onu nasıl yapabiliriz.
 
Son düzenleme:
S

Skorpiyon

Misafir
Sayın olymposss,

Rapor sayfanız en sonda kalmak sureti ile aşağıdaki kodu deneyiniz. Rapor sayfası Combobox'ta görünmeyecektir. (Kırmızı ile yazılan -1 'i ekleyiniz)

Private Sub UserForm_initialize()
For b = 1 To Sheets.Count - 1
ComboBox1.AddItem Sheets(b).Name
Next
End Sub

Saygılarımla...
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
evet bu olabilir çok teşekkür ederim.
saygılar
 
Üst