Kullanıcı Tanımlama

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Merhaba, kullandığım excel çalışma kitabını açılışta şifre ile kullanıcıya göre açılmasını istiyorum. Admin her şeyi görüp yapabilecek. Kullanıcı sadece 3 sayfayı (ör:Sayfa2,Sayfa5, sayfa7) görmeyecek, diğer sayfaları görüp her şeyi yapabilecek. Örnek kod yazarsanız kendi çalışmama uygulayabilirim. Şimdiden teşekkür ederim.
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
8,195
Excel Vers. ve Dili
Excel-2003 Türkçe
Merhaba;

Linkteki 4 nolu meaj ekini inceleyin.
İyi çalışmalar.
 

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Merhaba;

Linkteki 4 nolu meaj ekini inceleyin.
İyi çalışmalar.
Muygun çabuk dönüşünüz ve ilginiz için teşekkür ederim. Direkt açılışta userfomu açacak şekilde ayarlayıp uygulamaya çalışacağım.
Saygılar...
 

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Başka çözüm önerisi olan var mı?
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,310
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba , alternatif olarak link deki dosyayı inceleyebilirsiniz.

 
Son düzenleme:

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Sayın relaxim merhaba,

Kullandığım bir örnek dosya,

UserForm'da ; admin seçip şifreye a1 yazarak sayfalara erişebilir siniz.
Bu örnek daha kullanışlı gibi geldi kendi çalışmama uyarlamaya çalışacağım. İlginiz ve yardımlarınız için teşekkürler.
 

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
.
Söz konusu konuyu inceledim. Ancak amacım sürekli sekmeleri gezerken şifre ile uğraşmamak. İlgi ve alakanız için teşekkür ederim.
 

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Sayın relaxim merhaba,

Kullandığım bir örnek dosya,

UserForm'da ; admin seçip şifreye a1 yazarak sayfalara erişebilir siniz.
Sayın 1AI2Ver merhaba,
Sizin çalışmanızı uyarlarken bazı sayfalara yetkiyi sonra vermek istedim. O sayfalar gizlendi ve bir daha açılmadı. İnternette araştırdım kod ile tek tek sayfaları tekrar açabiliyoruz. Çok profesyonel bir çalışma olmadığı için o derece gizlememize gerek yok. Kodlarda nasıl bir değişiklik yapmak lazım ki istendiğinde yetki verilmeyenlere de sonra da yetki verilebilsin. Admin her durumda her sayfayı görebilsin.

Saygılar...
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,073
Excel Vers. ve Dili
Microsoft Office 365 ProPlus
Merhaba,

"….bazı sayfalara yetkiyi sonra vermek istedim. O sayfalar gizlendi ve bir daha açılmadı." ifadeniz için ;

1) ADMİN ve kullandığı Admin sayfası, yetkilerin verileceği sayfa ve kişileri kayıt etmeye yarıyor,

2) Kişi göremeyeceği sayfaları görmek isterse, ADMİN'e baş vuruyor,

3) Gizlenmiş sayfayı VBA editöründen ADMİN açabilir yada userform'dan ADMİN ile giriş yaparak, "ADMİN" sayfasında gerekli ekleme/düzenleme ile bunu sağlaya bilir.

Örneğin ; Ayşe isimli kullanıcı userform ile giriş yaptığında "AA" sayfasına erişim yetkisi yoksa, ADMİN'den , "AA" sayfasına erişim yetkisi isteyecektir.

Kısaca, yetki verilen kişi ve sayfanın tüm inisiyatifi, ADMİN isimli kullanıcınındır, diğer kullanıcılar ADMİN'den habersiz yetkisiz sayfaları göremez-kullanamaz.

VBA editöründe ilgili dosyanın "visible" özelliğini, açılır kutudan -1 xlSheetVisible yaparsanız sayfa görülür.



Benim çözüm istediğiniz konudan anladığım bunlar,

Farklı bir şey istiyorsanız daha net açıklamalara gerek duyuyorum,

Teşekkür ederim.
 
Son düzenleme:

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Merhaba,

"….bazı sayfalara yetkiyi sonra vermek istedim. O sayfalar gizlendi ve bir daha açılmadı." ifadeniz için ;

1) ADMİN ve kullandığı Admin sayfası, yetkilerin verileceği sayfa ve kişileri kayıt etmeye yarıyor,

2) Kişi göremeyeceği sayfaları görmek isterse, ADMİN'e baş vuruyor,

3) Gizlenmiş sayfayı VBA editöründen ADMİN açabilir yada userform'dan ADMİN ile giriş yaparak, "ADMİN" sayfasında gerekli ekleme/düzenleme ile bunu sağlaya bilir.

Örneğin ; Ayşe isimli kullanıcı userform ile giriş yaptığında "AA" sayfasına erişim yetkisi yoksa, ADMİN'den , "AA" sayfasına erişim yetkisi isteyecektir.

Kısaca, yetki verilen kişi ve sayfanın tüm inisiyatifi, ADMİN isimli kullanıcınındır, diğer kullanıcılar ADMİN'den habersiz yetkisiz sayfaları göremez-kullanamaz.

VBA editöründe ilgili dosyanın "visible" özelliğini, açılır kutudan -1 xlSheetVisible yaparsanız sayfa görülür.



Benim çözüm istediğiniz konudan anladığım bunlar,

Farklı bir şey istiyorsanız daha net açıklamalara gerek duyuyorum,

Teşekkür ederim.
İlginiz için teşekkürler. Sizin çalışmanızda sıkıntı yok. Sorun şu idi, ben çalışmayı kendi çalışmama uyarlarken admin için 12 sayfa yerine 6 sayfa ismini yazıp denemek istedim. Sonra diğerlerini eklerim diye düşündüm. Ancak admin olarak açıp admin sayfasına diğer sayfaları yazmama rağmen diğer sayfaları bir daha admin için bile görünür yapamadım. Sizin sayfa gösterme önerinizi denedim yine olmadı sanırım sizin kodlar tekrar çalışıp 2-xlSheetVeryHidden yapıyor. Yedek üzerinde çalıştığım için ana programıma bir şey olmadı.

Esas benim isteğim admin bütün sayfaları görsün 2. kullanıcı sadece belirtilen sayfaları göremesin. Sizin çalışmanız görmesi gerekenleri benim istediğim görmemesi gerekenleri, yani biraz ters yönden oluyor.

Bu daha zor olur derseniz bu akşam çalışmanızı kendi programıma uyarlıyacağım. Bu defa bütün sayfaları yazarak ....

İlgi ve alakanız için teşekkür ederim.
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,073
Excel Vers. ve Dili
Microsoft Office 365 ProPlus
Merhaba,

Aşağıdaki "dosyanın visible özelliğini" ifadesi "sayfanın visible özelliğini" şeklinde olacaktır.

VBA editöründe ilgili dosyanın "visible" özelliğini, açılır kutudan -1 xlSheetVisible yaparsanız sayfa görülür.

Teşekkür ederim.
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,073
Excel Vers. ve Dili
Microsoft Office 365 ProPlus
Merhaba,

"ADMİN" sayfasında A2:A sütununda yazan =EĞER(B2="";"";BAĞ_DEĞ_DOLU_SAY(B2:M2)+1) formülündeki M2 ifadesini sayfa adedi en son hangi hücrede bitmiş ise onu yazınız, örneğin ; 12 sayfa için M2'yi O2 yapıp aşağıya doğru çekiniz,

"ADMİN" sayfasına sayfa eklemeden önce dosyaya sayfa açınız, sonra "ADMİN" sayfasına bire bir aynısını yazınız, büyük-küçük harf duyarlıdır.

Böylece sorununuzun düzeleceğini sanıyorum,

Kod ; kullanıcı, görmesi gerekenleri görüyor ise, diğerlerini zaten görmemesi gerekiyor mantığına göre çalışıyor.

Kolay gelsin...
 

relaxim

Altın Üye
Altın Üye
Katılım
30 Ağustos 2009
Mesajlar
185
Excel Vers. ve Dili
ofis 2010
Merhaba,

"ADMİN" sayfasında A2:A sütununda yazan =EĞER(B2="";"";BAĞ_DEĞ_DOLU_SAY(B2:M2)+1) formülündeki M2 ifadesini sayfa adedi en son hangi hücrede bitmiş ise onu yazınız, örneğin ; 12 sayfa için M2'yi O2 yapıp aşağıya doğru çekiniz,

"ADMİN" sayfasına sayfa eklemeden önce dosyaya sayfa açınız, sonra "ADMİN" sayfasına bire bir aynısını yazınız, büyük-küçük harf duyarlıdır.

Böylece sorununuzun düzeleceğini sanıyorum,

Kod ; kullanıcı, görmesi gerekenleri görüyor ise, diğerlerini zaten görmemesi gerekiyor mantığına göre çalışıyor.

Kolay gelsin...
Hocam iyi akşamlar, örneğinizi kendi programıma başarılı bir şekilde uyguladım. Yanlış şifre girince uyarı vermesi için hangi satırın altına MsgBox(".......") eklememiz lazım.

Emek ve yardımlarınız için teşekkür ederim. Hakkınızı helal ediniz.
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,073
Excel Vers. ve Dili
Microsoft Office 365 ProPlus
Merhaba,

Rica ederim, işinize yaraması önemliydi.

Teşekkür ederim
 
Üst