Çözüldü Inputbox ile tüm sayfaları korumak veya korumayı kaldırmak.

Believing

Yıllık Site Üyesi
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Sayın uzman arkadaşlar,

Ekteki çalışmada "SETTINGS" isimli sayfaya atadığım iki adet buton yardımı ile tüm sayfaları koruma altına alıyor, ihtiyaca göre korumaları kaldırabiliyorum. Sayfaları koruma altına alırken sayfalar içerisinde hücre kilidi açık olan hücreler ile filtre yapılmasına müsaade ediyorum. Yapmak istediğim ise şöyle;
Sayfa koruma şifresini SETTINGS sayfasının "B2" hücresinden almasını
Sayfaları korurken daha önceden şifrelenmiş sayfa kontrolü yapmasını ve uyarı vermesini
Hatalı şifre girişinde "Yanlış şifre girdiniz."uyarı vermesini ve inputbox'ı kapatmasını
Doğru şifre ile tüm sayfaları korumaya alarak "Tüm sayfalar korumaya alındı" mesajı vermesini
Şifre girilirken şifrenin deşifre olmaması için (*****) yıldız karakteri şeklinde görünmesini
Sayfa korumaları kaldırırken de aynı işlemleri yapması için mevcut kodları nasıl revize etmeliyim.
Konuya hakim uzman arkadaşların çok değerli yardımlarını rica ediyorum.

Saygılarımla.
Ömer Ali ÜZÜMCÜ
 

Ekli dosyalar

Sayın @Believing .

Bence doğru yöntem; "Sayfayı Koru" ekranına benzer yapıda küçük bir userform kullanılması.

Şifrenin sayfadaki hücreden alınması derken kastınız, yazılacak koruma kaldırma şifresinin kaldırılması sırasında
şifrenin doğruluk kontrolü için değil mi?
Peki şifre doğru yazıldı ve koruma kaldırıldı. Bu aşamada tekrar koruma uygulamak için Excel'in "GÖZDEN GEÇİR"
menüsü üzerinden koruma uygulanmak için ilgili menüye tıklanıp farklı bir şifreyle koruma uygulanırsa ne olacak?

Yani işleme/işleyişe ait senaryonun üstünde durmak lazım öncelikle.
.
 
Sayın Ömer bey,

Sayfa koruma şifresi "SETTINGS" sayfasında belirlenecektir.
Excel'in "GÖZDEN GEÇİR" menüsü üzerinden farklı bir şifre ile koruma sağlanırsa, "Tüm Sayfaları KORU" veya "KALDIR" butonları kullanıldığında hata mesajı almalıyım.
Eğer sernaryonun yanlış kurgulandığını düşünüyorsanız sizin üreteceğiniz bir çözüm de benim için uygun olabilir.
Bu çalışmada asıl amaç, tüm sayfalara bir buton ile koruma sağlamak veya korumayı kaldırmak ve şifrenin deşifre olmaması (****) yıldız karakteri olarak görünmesini sağlamaktır.

Saygılarımla
 
**** karakteri kullanımı isteğiniz nedeniyle USERFORM önermiştim.
Küçük bir userform ve bu form üzerine yerleştirilecek bir TEXTBOX olursa,
bu textbox a yazılan karakterler *** şeklinde görüntülenebilir.

Varsayılan şifre sayfadaki hücrede > tamam
KORUMA KALDIRMA:
-- şifreyi kaldır düğmesine tıklandı (userformda **** karakteri görünerek şifre yazılır) ve yazılan şifre hücredekiyle tutuyor>> tamam
-- şifreyi kaldır düğmesine tıklandı (userformda **** karakteri görünerek şifre yazılır) ve yazılan şifre hücredekiyle tutmuyor>> işlem durdurulur.
-- düğme kullanılmadan excel normal menü çubuğundan şifre kaldır denildi ve şifre doğru yazıldı >> Bu işlem sadece aktif sayfa için geçerli olur, diğer korumalı sayfaların durumu ne olacak? >> SORUN 1

KORUMA KOYMA:
-- kaldır düğmesine tıklandı (userformda **** karakteri görünerek şifre yazılır) ve yazılan şifre hücredekiyle tutuyor>> tamam
-- kaldır düğmesine tıklandı (userformda **** karakteri görünerek şifre yazılır) ve yazılan şifre hücredekiyle tutmuyor>> işlem durdurulur.
-- düğme kullanılmadan excelin normal menüsü üzerinden koruma koyma işlemi yapıldığında buna nasıl engel olunacak?
Normal menü üzerinden koruma koyulmaya çalışıldığı nasıl anlaşılacak? Doğru şifre olmasa da YENİ şifre olarak aktif sayfa korumaya alınmış olur. Bu şifre belgedeki bir hücreye de yazılmadığına göre şifre unutulursa nasıl bulunacak? Diyelim unutulmadı ama yeni şifreyle koruma koyulmuş sayfa için bu kez, oluşturduğunuz koruma AÇ düğmesine tıklandı ve userform açıldı. Userform hücrede yazılan şifreyle eşleşme arayacağına göre yazılan YENİ şifre YANLIŞ (hücredeki değil çünkü) olarak görülmez mi?

.
 
Sayın @Believing .

Bu arada aklıma gelen çözüm, belge aktif hale geldiğinde devreye girmek ve
başka bir excel belgesine geçme/belgeyi kapatma sırasında devredışı bırakmak üzere;
Excel'in tüm menülerini gizlemek (sadece formül çubuğunu görünür bırakarak) şeklinde bir yöntem izlemek yönünde.

Menü alanı (şerit) gizlenirse; elle koruma uygulama veya kaldırma yapılamamış ve kullanıcı,
sayfadaki düğmeyi kullanmaya zorlanmış olur. Düğmeler üzerinden de mevcut akış gerçekleşir.

Akış için Sayın @mertatakan_3838 'ın eklediği **** görünümünü sağlayan InputBox yerine,
doğrudan belgedeki UserForm da kullanılabilir elbette.

.
 
Belirttiğim yöntemle ilgili olarak (açılış mesajı ekindeki belge üzerinden yürüyorum);
VBA ekranını açın;
-- ThisWorkbook bölümüne aşağıdaki kodları yapıştırın.
CPP:
You must log in to view content
(24 satır)

-- Boş bir MODULE aşağıdaki kodları yapıştıın.
CPP:
You must log in to view content
(11 satır)

-- Eksik kalan sadece; oluşturulacak USERFORM (Inputbox'a benzer) ve bu form üzerine yerleştiriecek,
TAMAM ve İPTAL düğmelerine ilişkin kısım oluyor.

.
,
 
Sayın Ömer bey,
10. mesaj yanlış konu başlığı altında açılmıştır.
Saygılarımla
Belirttiğim yöntemle ilgili olarak (açılış mesajı ekindeki belge üzerinden yürüyorum);
VBA ekranını açın;
-- ThisWorkbook bölümüne aşağıdaki kodları yapıştırın.
CPP:
You must log in to view content
(24 satır)

-- Boş bir MODULE aşağıdaki kodları yapıştıın.
CPP:
You must log in to view content
(11 satır)

-- Eksik kalan sadece; oluşturulacak USERFORM (Inputbox'a benzer) ve bu form üzerine yerleştiriecek,
TAMAM ve İPTAL düğmelerine ilişkin kısım oluyor.

.
,
 
Ömer hocam sanırım size farkı bir çözüm önerisi sunmakta.
Verdiği kodlar ile kod gizleme / gösterme yapabilirsiniz.


Belki ihtiyacınız bu değil ama sorunuza karşı düşündüğü çözüm yöntemi sanırım.
En doğrusunu Ömer hocam pc açınca iletecektir.

Konuyu okuyunca yazayım dedim.
 
Belirttiğim yöntemle ilgili olarak (açılış mesajı ekindeki belge üzerinden yürüyorum);
VBA ekranını açın;
-

Demekki tam olarak açıklayamamışım.
Oysa kod cevabımda, konu açılış mesajına eklli belge üzerinden hareket ettiğimi belirtmiştim.

Herneyse; yazarak açıklamaya çalıştığım hususların uygulandığı belge ekte.
Belge içerisinde de açıklama mevcut.
Belge açılırken; formül çubuğu hariç RIBBON MENU gizlenir ve kapatılırken sayfa koruması uygulanmamışsa
koruma uygulanarak açılma tamamanır.

Sayfadaki tek düğme KORUMA EKLEME/KALDIRMA işlemi için aynı anda kullanılır.
Koruma varsa kaldırmak için, yoksa koruma uygulamak için işlev görür.

Belgenin bence tek eksiği var o da VBA kısmının şifrelenmesi (dikkat hatırlayamacağınız bir şifre kullanmayın veya
şifreyi başka bir yerde muhafaza edin.

.
 

Ekli dosyalar

Sayın Ömer bey,

Sizin anlatmak istediğiniz senaryoyu anlayamadığım ortadadır.
Konuya gösterdiğiniz ilgi ve yardım için size çok teşekkür ederim. Çözüm oldukça profesyonelce kurgulanmış.
ALLAH sizden ve sevdiklerinizden razı olsun.
Hakkınızı helal ediniz lütfen.

Saygılarımla.
Ömer Ali ÜZÜMCÜ
 
Konuyu başlatan
Yıllık Site Üyesi
Katılım
Konum
Serik - ANTALYA
Konu Bilgi
Durum
Çözüldü 
Forum
Genel Excel Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
15
Üst