Sayfalara Þifre Koymak [Archive] - Excel Forum

PDA

Tüm Versiyonu Göster : Sayfalara Þifre Koymak


esavas
17-08-2004, 13:54
Merhabalar;

Excel' de kullandýðýmýz sayfalara þifre koymak istiyorum. Ã?yle bir kod olmalý ki bu sayfalara ulaþýlmak istendiðinde þifre sorarak yanlýþ olduðunda ise sayfayý açmamalý. Kodlarla bunu nasýl yapabilirim? Teþekkür ederim.

higzos
17-08-2004, 16:40
farklý kaydeti týklayýn açýlan pencerede "araçlar" ý açýn. araçlar içerisinde"genel seçenekleri" týkladýðýnýzda açýlan pencerede açma ve deðiþtirme parolasýný yazabilirsiniz.

Hüseyin
17-08-2004, 18:27
Selam,
yabancý bir sitede ayný soruya verilen aþaðýdaki kodu görmüþtüm;
Bu kodu VBA editörde þifreleyeceðiniz sayfanýn kod bölümüne yazýn.


Private Sub Worksheet_Activate()

Range("A65536").Select
If InputBox("Þifre Gir?", "Þifre") = "123" Then
Range("A1").Select
Else
MsgBox ("Þifre Yanlýþ")
Sheets("Sayfa1").Select
End If

End Sub

Burada "123" ü girilmesini istediðiniz þifre olarak deðiþtirin.
Sondan bir önceki satýrda da "Sayfa1" ifadesini çalýþma kitabýndaki var olan ancak gizli olmayan bir sayfa ismiyle deðiþtirin.
Ancak bu temel kullanýcýlara karþý bir çözüm.
Eðer kullanýcý break ile kodu durdurursa veya açýlýþta macro güvenliði sorusuna "makro etkinleþtirme" seçerse...güvenlik gitti demektir.... :hey:

warez
17-08-2004, 23:18
Sayfayý gizleyin. (Biçim/Sayfa/Gizle)
sonra açýlýþ makrusuna þu kodu ekleyin

Sub Auto_Open()
[b]Sheets("Gizli Sayfa").Visible = True[/b]
End Sub
Burada mantýk þu Makrolar etkinleþtirlmesse sayfa görünmez.
Etkinleþtirldiðinde ise o sayfaya týklandýðýnda sayfanýn kod böülümüne þu kodu ekleyin


Private Sub Worksheet_Activate()
Dim sifre
Dim durum
git:
sifre = Application.InputBox("Lütfen Kullanýcý Kodunu Giriniz", _
"Sayýn ; " & Application.UserName, "Þifre")
If sifre = Empty Then Sheets("DiðerSayfa").Select
If sifre <> "Þifre" Then
durum = MsgBox("Girdiðiniz Þifre Yanlýþtýr " _
& vbNewLine & "Lütfen doru þifre giriniz." _
& vbNewLine & "Tekrar þifre Girmek Ýstiyormusunuz", vbYesNo, Application.UserName)
If durum = vbYes Then GoTo git
Else
MsgBox "Þifre Doðrudur.....!", vbInformation, Application.UserName
Exit Sub
End If
Sheets("DiðerSayfa").Select
End Sub

esavas
18-08-2004, 09:28
Deðerli arkadaþlar;

Vermiþ olduðunuz bilgiye teþekkür ederim. Bana yol göstermiþ oldunuz.
Vermiþ olduðunuz kodlarý biraz daha deðiþtirerek istediðim iþlemi yapabildim.

Ýlginize ve yardýmýnýza teþekkür ederim.

esavas
18-08-2004, 09:34
Bilgilerin paylaþýldýkça arttýðýný düþünen bir kiþi olarak, sizlerin yol göstermesi ile hazýrladýðým kodlarý sunuyorum:

Ã?ncelikle Sayfa1' de bir buton yaptým ve bu butona Sayfa2'yi aktif etmesi için aþaðýdaki kodu yazdým.

Worksheets("Sayfa2").Activate

Sorasýnda ise;

Sayfa2' ye Worksheet_Activate Prosedürüne aþaðýdaki kodu ekledim;

Sheets("Sayfa2").Visible = False
q = InputBox("Þifreyi Giriniz")
If q = "1" Then
Sheets("Veriler").Visible = True
Else:
Application.Goto Reference:=Worksheets("Sayfa1").Range("a1"), Scroll:=True
End If


Bu bilgilere ihtiyacý olanlara yardýmcý olabileceði ümidiyle, þimdilik hoþçakalýn, :hey:

esavas
18-08-2004, 09:36
Düzeltme:

Yukarýdaki kod da Veriler ile ifade ettiðim Sayfa2 dir.

Hüseyin
18-08-2004, 09:42
Çözümü de paylaþtýðýn için teþekkürler. :bravo:

Sorunu çözülen tüm kullanýcýlar bu tarz veya en azýnda "Sorunu çözdüm"
þeklinde bir geri bildirimde bulunursa daha faydalý olur kanaatindeyim. :dua:


Özel Arama