VBA Koruma Sayfası - VBA kullanarak Excel Sayfasını Parola ile Koruyun

Excel VBA Koruma Sayfası

Biz yapabilirsiniz vba kodu kullanarak excel sayfayı korumak kullanıcı çalışma sayfası verilerinin herhangi bir değişiklik yapmak için izin vermez, yapabilecekleri hepsi sadece raporu okumaktır. Bunun için "Koru" adında yerleşik bir vba yöntemimiz var.

Çalışma sayfalarımızı benzer şekilde excel'de koruduğumuz gibi, çalışma sayfalarımızı korumak için VBA kullanabiliriz, bu bir .protect ifadesi kullanılarak yapılır, bir sayfayı korumak için iki yöntem vardır, biri parola ile diğeri parolasızdır, korunacak sözdizimi bir çalışma sayfası aşağıdaki gibidir Çalışma Sayfaları (). Parolayı Koru.

Nihai son raporu genellikle kullanıcı veya okuyucu ile paylaşıyoruz. Nihai son raporu kullanıcıyla paylaştığımızda, kullanıcının son raporu herhangi bir değişiklik yapmamasını veya değiştirmemesini diliyoruz. Böyle bir senaryoda, mesele güven, değil mi?

Sözdizimi

Koruyucu tabaka, tedarik edilecek çeşitli parametreleri içerir. Bu, sayfanın korumasını kaldırmaktan farklıdır. Bir parola ile Protect yönteminin sözdizimine bakalım.

Vay!!! Sözdizimine bakarak gözünüzü korkutmayın. Aşağıdaki her bir argümanın açıklamasına bir göz atın.

  • Çalışma Sayfası Adı: Öncelikle hangi çalışma sayfasını koruyacağımızı belirtmemiz gerekiyor.
  • Şifre: Korumak için kullandığımız şifreyi girmemiz gerekiyor. Bu parametreyi yok sayarsak, excel sayfayı şifre olmadan kilitleyecek ve sayfanın korumasını kaldırırken herhangi bir şifre sormadan korumayı kaldıracaktır.
  • Not: Verdiğiniz parolayı hatırlayın, çünkü unuttuysanız, çeşitli zor yollardan geçmeniz gerekir.
  • Çizim Nesnesi: Çalışma sayfasındaki nesneleri korumak istiyorsanız, bağımsız değişkeni DOĞRU veya YANLIŞ olarak iletebilirsiniz. Varsayılan değer DOĞRU'dur.
  • İçindekiler: Çalışma sayfasının içeriğini korumak için parametreyi DOĞRU veya YANLIŞ olarak ayarlayın. Varsayılan değer YANLIŞ'tır. Bu sadece kilitli hücreleri koruyacaktır. Varsayılan değer DOĞRU'dur.
  • Senaryolar: Excel senaryolarında herhangi bir olasılık analizi varsa, onları da koruyabiliriz. DOĞRU veya YANLIŞ'ı korumak için. Varsayılan değer DOĞRU'dur.
  • Yalnızca Kullanıcı Arayüzü: Kullanıcı arayüzünü makro dışında korumak istiyorsanız, bu durumda DOĞRU olmalıdır. Bu argüman atlanırsa, hem makroları hem de kullanıcı arayüzünü koruyacaktır. Bağımsız değişkeni TRUE olarak ayarlarsanız, yalnızca kullanıcı arayüzünü koruyacaktır. Varsayılan değer YANLIŞ'tır.
  • Hücrelerin Biçimlendirilmesine İzin Ver: Kullanıcının hücreyi biçimlendirmesine izin vermek istiyorsanız, parametreyi DOĞRU veya YANLIŞ olarak ayarlayabilirsiniz. Varsayılan değer YANLIŞ'tır.
  • Sütunların Biçimlendirilmesine İzin Ver: Kullanıcının korumalı sayfadaki herhangi bir sütunu biçimlendirmesine izin vermek istiyorsanız, parametreyi DOĞRU veya YANLIŞ olarak ayarlayabilirsiniz. Varsayılan değer YANLIŞ'tır.
  • Satırların Biçimlendirilmesine İzin Ver: Kullanıcının korumalı sayfadaki herhangi bir satırı biçimlendirmesine izin vermek istiyorsanız, parametreyi DOĞRU veya YANLIŞ olarak ayarlayabilirsiniz. Varsayılan değer YANLIŞ'tır.
  • VBA'da Sütun Eklemeye İzin Ver : Kullanıcının yeni sütunlar eklemesine izin vermek istiyorsanız, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Satır Eklemeye İzin Ver: Kullanıcının yeni satırlar eklemesine izin vermek istiyorsanız, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Köprü Eklemeye İzin Ver: Kullanıcının köprü eklemesine izin vermek isterseniz, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Sütunların Silinmesine İzin Ver: Kullanıcının VBA'daki sütunları silmesine izin vermek istiyorsanız, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Satırların Silinmesine İzin Ver: Kullanıcının satırları silmesine izin vermek isterseniz, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Sıralamaya İzin Ver: Kullanıcının verileri sıralamasına izin vermek istiyorsanız, bunu DOĞRU olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Filtrelemeye İzin Ver: Kullanıcının verileri filtrelemesine izin vermek isterseniz, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.
  • Pivot Tabloların Kullanılmasına İzin Ver: Kullanıcının pivot tabloları kullanmasına izin vermek istiyorsanız, bunu TRUE olarak ayarlamanız gerekir. Varsayılan değer YANLIŞ'tır.

VBA Kodunu Kullanarak Sayfa Nasıl Korunur?

Adım 1: Korunması gereken Sayfayı seçin

Sayfayı korumak için ilk adım, bir parola kullanarak hangi sayfayı korumamız gerektiğine karar vermektir ve VBA Çalışma Sayfası Nesnesini kullanarak sayfayı adıyla çağırmamız gerekir.

Örneğin, "Ana Sayfa" adlı sayfayı korumak istediğinizi varsayın, ardından aşağıdaki gibi çalışma sayfası adını belirtmeniz gerekir.

Adım 2: Çalışma Sayfası Değişkenini Tanımlayın

Çalışma sayfası adından bahsettikten sonra bir nokta koyun, ancak çalışacak herhangi bir IntelliSense listesi görmüyoruz. Bu, işi zorlaştırır. IntelliSense listesine erişmek için değişkeni bir çalışma sayfası olarak tanımlar.

Kod:

Alt Koruma_Örnek1 () Çalışma Sayfası Sonu Alt Olarak Dim W

Step 3: Give Worksheet Reference

Now set the worksheet reference to the variable as Worksheets(“Master Sheet”).

Code:

Sub Protect_Example1() Dim Ws As Worksheet Set Ws = Worksheets("Master Sheet") End Sub

Now the variable “Ws” holds the reference of the worksheet named “Master Sheet.” By using this variable, we can access the IntelliSense list.

Step 4: Select Protect Method

Select the “Protect” method from the IntelliSense list.

Step 5: Enter Password

Specify the password in double-quotes.

Code:

Sub Protect_Example1() Dim Ws As Worksheet Set Ws = Worksheets("Master Sheet") Ws.Protect Password:="MyPassword" End Sub

Step 6: Run the Code

Run the code manually or using the shortcut key F5 then, it will protect the sheet named as “Master Sheet.”

Sayfa korunduğunda, herhangi bir değişiklik yapmak istersek, aşağıda gösterildiği gibi bazı hata mesajları gösterir.

Birden fazla sayfayı korumak isterseniz, döngüler kullanmamız gerekir. Sayfayı korumak için örnek kod aşağıdadır.

Sub Protect_Example2 () ActiveWorkbook.Worksheets'teki Her Ws İçin Çalışma Sayfası Olarak Dim Ws Ws.Protect Parolası: = "My Passw0rd" Next Ws End Sub

Not: Denemek için diğer parametreleri kullanın.

Ilginç makaleler...