Excel'de farklı kullanıcılar için ayrı çalışma sayfalarını nasıl parola ile korursunuz?
Excel'de farklı çalışma sayfaları için ayrı parolalar belirleyebilirsiniz. Bu sayede bir kullanıcı, belirli bir parolayla yalnızca bir çalışma sayfasında değişiklik yapabilirken; başka bir kullanıcı, farklı bir parolayla başka bir sayfada değişiklik yapabilir. Peki ya her kullanıcının sadece kendi çalışma sayfasını görüntülemesini ve ona erişmesini sağlamak isterseniz? Excel’de bunu gerçekleştirmek mümkün mü?
Her bir çalışma sayfasını ayrı ayrı korumak ve kullanıcıların bu sayfalara erişimini sınırlamak için aşağıdaki VBA kodunu uygulayın:
1. Yeni bir çalışma kitabı açın ve “Main” (Ana) adında yeni bir sayfa oluşturun; ekran görüntüsüne göz atın:

2. Ardından "Alt" + "F11" tuşlarına basarak "Microsoft Visual Basic for Applications" penceresini açın, sol taraftaki "Project-VBAProject" bölmesinde yer alan "ThisWorkbook" (Bu Çalışma Kitabı) öğesine çift tıklayarak boş bir kod modülü açın ve aşağıdaki VBA kodunu kod penceresine kopyalayıp yapıştırın; ekran görüntüsüne göz atın:
VBA kodu: Kullanıcılara göre bireysel sayfaları parola ile koruma
Option Explicit
Dim gUserName As String
Dim gUserPass As String
Private Sub Workbook_Open()
'Updateby ExtendOffice
Dim xWShs As Sheets
Dim xWSh As Worksheet
Dim xUserName As String
Dim xPass As String
Dim xBolH As Boolean
GTINPUT:
xUserName = InputBox("Enter the user name")
If TypeName(xUserName) = "String" Then
If xUserName = "" Then
Exit Sub
End If
End If
xUserName = LCase(xUserName)
xPass = InputBox("User name:" & xUserName & Chr(13) & Chr(10) & "Enter the password:")
If TypeName(xPass) = "String" Then
If xPass = "" Then
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End If
Else
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End If
Set xWShs = Worksheets
xBolH = False
For Each xWSh In Worksheets
If xWSh.Name = xUserName Then
xBolH = True
Exit For
End If
Next
If xBolH Then
Set xWSh = xWShs(xUserName)
On Error GoTo GTINPUT2
xWSh.Unprotect (xPass)
xWSh.Visible = True
xWSh.Activate
Else
Set xWSh = xWShs.Add
xWSh.Name = xUserName
xWSh.Activate
End If
gUserName = xUserName
gUserPass = xPass
Exit Sub
GTINPUT2:
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim xWSh As Worksheet
On Error Resume Next
Set xWSh = Worksheets(gUserName)
xWSh.Protect Password:=gUserPass, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
For Each xWSh In Worksheets
If xWSh.Name <> "Main" Then
xWSh.Visible = xlSheetVeryHidden
End If
Next xWSh
ActiveWorkbook.Save
End Sub

3. Ardından imleci "Private Sub Workbook_Open()" betiğinin sonuna getirin ve bu kodu çalıştırmak için "F5" tuşuna basın. Açılan istem kutusuna, bu kullanıcı için bir sayfa oluşturmak istediğiniz Kullanıcı Adı'nı girin (ekran görüntüsüne bakın):

4. Ardından "Tamam" düğmesine tıklayın ve bir sonraki istem kutusunda bu sayfayı korumak için bir parola girin; ekran görüntüsüne bakın:

5. "Tamam" düğmesine tıklamaya devam edin; Kullanıcı Adı adıyla yeni bir sayfa hemen oluşturulur ve o kullanıcı için istediğiniz verileri girebilirsiniz. Ekran görüntüsüne göz atın:

6. Diğer kullanıcılar için kullanmak istediğiniz diğer sayfaları tek tek oluşturmak üzere yukarıdaki 3.–5. adımları tekrarlayın.
7. Sayfaları oluşturduktan sonra, geçerli çalışma kitabını kaydetmek için “Dosya” > “Farklı Kaydet” seçeneğine tıklayın. “Farklı Kaydet” iletişim kutusunda bir dosya adı girin ve “Kaydetme Biçimini Belirt” açılır listesinden “Excel Makro Etkin Çalışma Kitabı (*.xlsm)” biçimini seçin; ekran görüntüsüne bakın:

8. Ardından bu dosyayı kaydetmek için **Kaydet** düğmesine tıklayın.
9. Ardından çalışma kitabını kapatıp yeniden açın ve kodu etkinleştirmek için Formül Çubuğu’nun üst kısmında yer alan “İçeriği Etkinleştir” seçeneğine tıklayın.

10. Artık belirli bir kullanıcının ilgili sayfayı açabilmesi için kullanıcı adı ve parolasını girmenizi isteyen bir iletişim kutusu açılacaktır.
11. Son olarak, bu çalışma kitabını diğer kullanıcılara gönderirken, onlara Kullanıcı Adı ve parolalarını da göndermelisiniz. Böylece yalnızca kendi sayfalarını açabilir ve düzenleyebilir; diğer çalışma sayfalarını görüntüleme yetkileri olmaz.
En İyi Office Üretkenlik Araçları
Kutools for Excel ile Excel becerilerinizi üst seviyeye taşıyın ve hiç yaşamadığınız bir verimlilik deneyimi yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli arayüz getirir ve işlerinizi çok daha kolay hale getirir
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Birden fazla belgeyi yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açın ve oluşturun.
- Günlük üretkenliğinizi %50 artırır ve size her gün yüzlerce fare tıklamasından tasarruf sağlar!
Tüm Kutools eklentileri — tek bir yükleyiciyle!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint için eklentileri ve ayrıca Office Tab Pro’yu içerir; bu da Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek yükleyici, tek lisans— dakikalar içinde kurulum (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— tek tek eklenti satın alımına göre tasarruf edin