• DİKKAT

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

Kullanıcı adıyla açıldıktan sonra yetkileri sınırlamak

Katılım
27 Aralık 2014
Mesajlar
33
Excel Vers. ve Dili
TR
Forumda araştırdım fakat bir özüm bulamadım. Sayfa görünümü ile ilgili yetkiler var fakat sayfa içi özel yetkilendirmeyi bulamadım.

Üç farklı kullanıcım mevcut.

Kullanıcı: MİMARİ şifre: 123 tüm dosyayı görebilsin fakat sadece P:U sütunu değiştirebilsin
Kullanıcı: ÜRETİM şifre: 234 tüm dosyayı görebilsin fakat sadece B:O sütunu değiştirebilsin
Kullanıcı ADMİN şifre:000 tam yetki ile açsın

Değerli yardımlarınızı beklerim...

:yardim::yardim::yardim:
:arkadas::arkadas::arkadas:
 

Ekli dosyalar

Kullanıcı: MİMARİ şifre: 123 tüm dosyayı görebilsin fakat sadece P:U sütunu değiştirebilsin
Kullanıcı: ÜRETİM şifre: 234 tüm dosyayı görebilsin fakat sadece B:O sütunu değiştirebilsin

Bu Sütunlar VERİ SAYFASI sekmesindemi geçerli yoksa diğer sekmelerde demi geçerli?
 
Aktif sayfa için kod


Kod:
Sub deneme()

sifre = "[COLOR="Red"]deneme12[/COLOR]"
sayfa = [COLOR="red"]ActiveSheet.Name[/COLOR]


Select Case UserForm1.TextBox1.Value
Case "MİMARİ"
If UserForm1.TextBox2.Value <> "123" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""
Else
MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False

Cells.Locked = True
Cells.FormulaHidden = False
Columns("P:U").Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True

End If

Case "ÜRETİM"
If UserForm1.TextBox2.Value <> "234" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""
Else
MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False
Cells.Locked = True
Cells.FormulaHidden = False
Columns("B:O").Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True
End If

Case "ADMİN"

If UserForm1.TextBox2.Value <> "000" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""

Else

MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False
Cells.Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True
End If
Case Else
MsgBox "Sistemde Kayıtlı Böyle Bir Kullanıcı Bulunmamaktadır.", vbCritical, "UYARI"
UserForm1.TextBox1.Value = ""
UserForm1.TextBox2.Value = ""
End Select

End Sub
 
Kullanıcı: MİMARİ şifre: 123 tüm dosyayı görebilsin fakat sadece P:U sütunu değiştirebilsin
Kullanıcı: ÜRETİM şifre: 234 tüm dosyayı görebilsin fakat sadece B:O sütunu değiştirebilsin

Bu Sütunlar VERİ SAYFASI sekmesindemi geçerli yoksa diğer sekmelerde demi geçerli?

sadece veri sayfasında geçerli olacak
 
Aktif sayfa için kod


Kod:
Sub deneme()

sifre = "[COLOR="Red"]deneme12[/COLOR]"
sayfa = [COLOR="red"]ActiveSheet.Name[/COLOR]


Select Case UserForm1.TextBox1.Value
Case "MİMARİ"
If UserForm1.TextBox2.Value <> "123" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""
Else
MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False

Cells.Locked = True
Cells.FormulaHidden = False
Columns("P:U").Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True

End If

Case "ÜRETİM"
If UserForm1.TextBox2.Value <> "234" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""
Else
MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False
Cells.Locked = True
Cells.FormulaHidden = False
Columns("B:O").Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True
End If

Case "ADMİN"

If UserForm1.TextBox2.Value <> "000" Then
MsgBox "Yanlış Kullanıcı Şifresi Girdiniz", vbCritical, "HATA"
UserForm1.TextBox2.Value = ""

Else

MsgBox "Programa Girişiniz Onaylandı", vbInformation
Application.Visible = True
Unload UserForm1

Worksheets(sayfa).Protect Password:=sifre, Contents:=False, Scenarios:=False
Cells.Locked = False
Cells.FormulaHidden = False
Worksheets(sayfa).Protect Password:=sifre, Contents:=True, Scenarios:=True
End If
Case Else
MsgBox "Sistemde Kayıtlı Böyle Bir Kullanıcı Bulunmamaktadır.", vbCritical, "UYARI"
UserForm1.TextBox1.Value = ""
UserForm1.TextBox2.Value = ""
End Select

End Sub

Çok teşekkür ederim bunun üzerinden düzeltmelere devam edeceğim.
Cells.Locked sadece yazmaya kilitlemem lazım biçim süzgeç vb ler açık kalmasını istiyorum...
birde Giriş ekranında şifre karakterini artıramıyorum...
 
Son düzenleme:
Birinci sorunuzla ilgili kod sayfayı korumaya alıyor aksi taktirde korunmayan sayfaya her bir kullanıcı işlem yapabilir bu bu yöntemle başka olmaz

diğer sorunuz ile ilgili
Giriş ekranı için userformun içinde sınırlama mevcut

Kod:
UserForm1.TextBox2.MaxLength = [COLOR="Red"]3[/COLOR]
üç karektele sınırlı siz buradaki sayıyı arttırabilirsiniz veya tamamen silebilirsiniz.
 
Birinci sorunuzla ilgili kod sayfayı korumaya alıyor aksi taktirde korunmayan sayfaya her bir kullanıcı işlem yapabilir bu bu yöntemle başka olmaz

diğer sorunuz ile ilgili
Giriş ekranı için userformun içinde sınırlama mevcut

Kod:
UserForm1.TextBox2.MaxLength = [COLOR="Red"]3[/COLOR]
üç karektele sınırlı siz buradaki sayıyı arttırabilirsiniz veya tamamen silebilirsiniz.

Hedef zaten korumak fakat süzgeç sıralama bunları da sınırlayınca dosya kullanımı zorlaşıyor.
Kilitleme kriterlerini sayfayı korumaya alırken değiştirebiliyoruz fakat kod ile bu mümkün değil mi?
 
Geri
Üst