sayfayı korumaya alınca makro çalışmıyor

Katılım
1 Nisan 2007
Mesajlar
54
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
21.06.2018
Selam Arkadaşlar ;

Dosyayı her açtığımda otomatik çalışan bir makrom var. Sayfayı korumaya almam gerekiyor malesef bu sefer de makro çalışmıyor.

Yardımınızı rica ederim, dosya ektedir.
 

Ekli dosyalar

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba,
Private Sub Workbook_Open kodlarında

With Worksheets("Stok")
.Select


satırından sonra ActiveSheet.Unprotect "1" satırını ve End With satırından önce ActiveSheet.Protect "1" satırını ekleyiniz.
"1" ifadesindeki 1, sayfaya verilecek olan şifredir.
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Kod:
Private Sub Workbook_Open()
Worksheets("Stok").Unprotect "Şifreniz"
    With Worksheets("Stok")
        .Select
        If .FilterMode Then .ShowAllData
   
        With .ListObjects("Tablo1").Sort.SortFields
            .Clear
            .Add Key:=Range("Tablo1[Marka]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori 2]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Stok]"), Order:=xlDescending
        End With
   
        With .ListObjects("Tablo1").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
   
        .ListObjects("Tablo1").Range.AutoFilter Field:=10, Criteria1:=">0", Operator:=xlAnd
    End With
Worksheets("Stok").Protect "Şifreniz"
End Sub
 
Katılım
1 Nisan 2007
Mesajlar
54
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
21.06.2018
Kod:
Private Sub Workbook_Open()
Worksheets("Stok").Unprotect "Şifreniz"
    With Worksheets("Stok")
        .Select
        If .FilterMode Then .ShowAllData
 
        With .ListObjects("Tablo1").Sort.SortFields
            .Clear
            .Add Key:=Range("Tablo1[Marka]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori 2]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Stok]"), Order:=xlDescending
        End With
 
        With .ListObjects("Tablo1").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
 
        .ListObjects("Tablo1").Range.AutoFilter Field:=10, Criteria1:=">0", Operator:=xlAnd
    End With
Worksheets("Stok").Protect "Şifreniz"
End Sub
Kod:
Private Sub Workbook_Open()
Worksheets("Stok").Unprotect "Şifreniz"
    With Worksheets("Stok")
        .Select
        If .FilterMode Then .ShowAllData
  
        With .ListObjects("Tablo1").Sort.SortFields
            .Clear
            .Add Key:=Range("Tablo1[Marka]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Alt Kategori 2]"), Order:=xlAscending
            .Add Key:=Range("Tablo1[Stok]"), Order:=xlDescending
        End With
  
        With .ListObjects("Tablo1").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
  
        .ListObjects("Tablo1").Range.AutoFilter Field:=10, Criteria1:=">0", Operator:=xlAnd
    End With
Worksheets("Stok").Protect "Şifreniz"
End Sub
Cevabınız için teşekkür ederim. Peki stok sayfasını da gizleyip kitabı korumaya almak istesem ?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Makroların işlem yapabilmesi için sayfaların genellikle görünür olmasına ihtiyaç yok.
Yeterki kullanılan kodlarda ....Select, .... Activate gibi kod satırları olmasın.
Örneğin;
Sheets("Sayfa1").Activate
[A1].Select
[A1]=1
kod satırları yerine Sheets("Sayfa1").[A1]=1 şeklinde bir satır yeterlidir.
Dolayısıyla esas olarak makrolar, gizli sayfalarda da işlem yapabilir.
.
 
Katılım
1 Nisan 2007
Mesajlar
54
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
21.06.2018
Merhaba.

Makroların işlem yapabilmesi için sayfaların genellikle görünür olmasına ihtiyaç yok.
Yeterki kullanılan kodlarda ....Select, .... Activate gibi kod satırları olmasın.
Örneğin;
Sheets("Sayfa1").Activate
[A1].Select
[A1]=1
kod satırları yerine Sheets("Sayfa1").[A1]=1 şeklinde bir satır yeterlidir.
Dolayısıyla esas olarak makrolar, gizli sayfalarda da işlem yapabilir.
.
Cevabınızı tam anlayamadım. Yeterli kod yazma bilgisine sahip değilim. Çalışma sayfalarını istediğim gibi gizleyebileceğim şekilde bir örnek paylaşmanız mümkün müdür ?

Saygılarımla
 
Katılım
1 Nisan 2007
Mesajlar
54
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
21.06.2018
Cevabınızı tam anlayamadım. Yeterli kod yazma bilgisine sahip değilim. Çalışma sayfalarını istediğim gibi gizleyebileceğim şekilde bir örnek paylaşmanız mümkün müdür ?

Saygılarımla
Konu hakkında yardım rica ederim. Esas olarak yapmak istediğim dosya her açıldığında makro çalışırken, sayfa ve kitap gizleyerek şifre koyabilmek. Şifrelemeyi kod satırıyla değil, excel in yönergeleri üzerinden yapmak istiyorum. Dolayısıyla select komutunu kullanmadan makro kullanılması öneriniz yardımcı olacaktır sanırım. Sadece ilgili kodu yazmak için yardımınıza ihtiyacım var. Şimdiden teşekkür ederim.
 
Son düzenleme:
Katılım
1 Nisan 2007
Mesajlar
54
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
21.06.2018
Sanırım bu konuda destek alamayacağım. İlginize teşekkürler
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Ekteki belgede yer alan uygulamayı inceleyiniz, denemeler yapınız.
Belgeye, fareyle BURAYA tıklayarak da erişebilirsiniz.
.
 

Ekli dosyalar

Son düzenleme:
Üst