Çözüldü Multipage Yetkilendirme

Katılım
3 Nisan 2014
Mesajlar
394
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Merhaba,

Userform üzerindeki Multipage'de 5 farklı sekme var. 4.sıradaki sekmeye sadece benim izin verdiğim kişiler girebilsin istiyorum.

Aşağıdaki kodları denedim fakat çalışmadı, yardımcı olabilir misiniz?

Kod:
Private Sub MultiPage1_Change()

page_no = UserForm1.MultiPage1.Value
user = Application.WorksheetFunction.Proper(Environ("Username"))

If page_no = 3 Then

  If user = "A.Diren" Or user <> "S.Yakal" Then
    
    MsgBox ("Bu sayfayı açmaya yetkiniz yok")
    MultiPage1.Pages(1).Activate
        
    Else
    End If
    
Else
End If

End Sub
 
Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
Örneğin Page3'in visible özelliğini false yapın. Form açıldığında çıkan InputBox'a 123 yazarsanız Page3 görünecektir. Diğer kullanıcılar şifreyi yazmayınca görünmeyecektir.
Kod:
Private Sub UserForm_Activate()
MyValue = InputBox(Message, Title, "")
If MyValue = "123" Then MultiPage1.Pages("Page3").Visible = True
End Sub
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,135
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Alternatif olsun: Yukarıdaki kontrolü userform açılış olayına uygulayarak ilgili sayfayı tamamen gizleyebilirsiniz.
Kod:
Private Sub UserForm_Initialize()
user = Application.WorksheetFunction.Proper(Environ("Username"))
If user <> "A.Diren" And user <> "S.Yakal" Then
    MultiPage1.Pages(3).Visible = False
End If
End Sub
 
Katılım
3 Nisan 2014
Mesajlar
394
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Merhaba,
Alternatif olsun: Yukarıdaki kontrolü userform açılış olayına uygulayarak ilgili sayfayı tamamen gizleyebilirsiniz.
Kod:
Private Sub UserForm_Initialize()
user = Application.WorksheetFunction.Proper(Environ("Username"))
If user <> "A.Diren" And user <> "S.Yakal" Then
    MultiPage1.Pages(3).Visible = False
End If
End Sub
Merhaba Ömer bey,

Denedim bu şekilde fakat, visible=false dan dolayı koşula bakmadan her durumda Page3 görünmez oldu. Dosya ektedir, incelemeniz mümkün müdür?
 

Ekli dosyalar

Katılım
3 Nisan 2014
Mesajlar
394
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Örneğin Page3'in visible özelliğini false yapın. Form açıldığında çıkan InputBox'a 123 yazarsanız Page3 görünecektir. Diğer kullanıcılar şifreyi yazmayınca görünmeyecektir.
Kod:
Private Sub UserForm_Activate()
MyValue = InputBox(Message, Title, "")
If MyValue = "123" Then MultiPage1.Pages("Page3").Visible = True
End Sub
Teşekkürler Ali bey,

Her kullanıcı bu durumda şifre girmeye çalışacak ve şifre giremeyen dosyayı da kullanamayacak sanki. Ben belirli kişilerin tam yetkili, kalan kullanıcıların kısmi yetkili olmasını istiyorum. #6 no'lu mesajda dosyayı ekledim, incelemeniz mümkün müdür?
 
Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
Hayır sadece engellenen Page'yi göremeyecek. Dosyanızı bir dosya paylaşım sitesine eklerseniz dosyanıza uyarlamaya çalışayım. Altın üye olmadığımdan dosya indiremiyorum.
Ağda paylaşıma açık dosya ile mi çalışıyorsunuz yoksa aynı bilgisayarda değişik kullanıcılar için paylaşım yapılmış dosya ile çalışıyorsunuz.
 
Son düzenleme:
Katılım
3 Nisan 2014
Mesajlar
394
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Katılım
3 Nisan 2014
Mesajlar
394
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Hayır sadece engellenen Page'yi göremeyecek. Dosyanızı bir dosya paylaşım sitesine eklerseniz dosyanıza uyarlamaya çalışayım. Altın üye olmadığımdan dosya indiremiyorum.
Ağda paylaşıma açık dosya ile mi çalışıyorsunuz yoksa aynı bilgisayarda değişik kullanıcılar için paylaşım yapılmış dosya ile çalışıyorsunuz.
Merhaba,

Dediğiniz şekilde yaptım, çalışıyor fakat her açılışta şifre sorması sinir bozucu.

PC adına göre otomatik yapmak daha doğru sanki
 
Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
Versiyon farklılığı nedeniyle dosyanız üzerinde çalışma yapamadım.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,135
Excel Vers. ve Dili
2007 Türkçe
Merhaba Ömer bey,

Denedim bu şekilde fakat, visible=false dan dolayı koşula bakmadan her durumda Page3 görünmez oldu. Dosya ektedir, incelemeniz mümkün müdür?
Merhaba,
If sorgusunda kişilerin arasına or yerine and kullanmanız gerekiyor.
 
Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
A.Diren, S.Yakal adlı kullanıcıların Page3 ü görmesini istiyorsanız
Kod:
Private Sub UserForm_Activate()
user = Application.WorksheetFunction.Proper(Environ("Username"))
If user = "A.Diren" or user = "S.Yakal" Then MultiPage1.Pages("Page3").Visible = True
End Sub
 
Üst