• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Userformdaki butonların pasif olması gerekiyor.

  • Konbuyu başlatan Konbuyu başlatan s.savas
  • Başlangıç tarihi Başlangıç tarihi
Katılım
12 Ocak 2009
Mesajlar
838
Excel Vers. ve Dili
2003
Userform2 de saylara ait kısayol butonları var. Userform1 de ise gereksiz olan sayfaları gizleyen makrolar var.Gizli olan sayfalara ait butonlar tıklanınca hata mesajı vermektedir.
Userform2 de butonların hata mesajı vermemesi için ilgili olduğu sayfaların gizlendiği durumlarda pasif olması gerekmektedir.
İlgilenecek arkadaşlara teşekkür ederim.
 

Ekli dosyalar

Dosyanız ektedir.:cool:
Kod:
Private Sub UserForm_Initialize()
Dim i As Byte
For i = 1 To 9
    If Sheets(Left(Me.Controls("CommandButton" & i).Caption, 1)).Visible = False Then
        Me.Controls("CommandButton" & i).Enabled = False
    End If
Next i
End Sub
 

Ekli dosyalar

Dosyanız ektedir.:cool:
Kod:
Private Sub UserForm_Initialize()
Dim i As Byte
For i = 1 To 9
    If Sheets(Left(Me.Controls("CommandButton" & i).Caption, 1)).Visible = False Then
        Me.Controls("CommandButton" & i).Enabled = False
    End If
Next i
End Sub

Evren hocam teşekkür ederim.
Her zamanki gibi yazdığınız kodları orjinal dosyama uyarlarken bişeyleri eksik yapıyorum ve neticesinde de hata mesajı alıyorum.
Orjinal dosyam ektedir.
Yazdığınız kodların ekteki dosyanın userform3'e yazılması gerekiyor.
 

Ekli dosyalar

Selamlar,

UserForm3 nesnesindeki CommandButton üzerinde yazan sayfa isimlerinizi aynı yaptıktan sonra aşağıdaki kodu deneyin.

Örnek;

Sayfa adınız "Malzeme_Listesi" ama butondaki isim "Malzeme Listesi" şeklindedir. İkisinide aynı yaptıktan sonra kodu deneyin.

Kod:
Private Sub UserForm_Initialize()
    Dim Nesne As Control
    
    For Each Nesne In MultiPage1.Pages(3).Controls
        If TypeName(Nesne) = "CommandButton" Then
            If Nesne.Caption <> "Ana Sayfa" And Nesne.Caption <> "Çıkış" Then
                If Sheets(Nesne.Caption).Visible = False Then
                    Nesne.Enabled = False
                End If
            End If
        End If
    Next
End Sub
 
Selamlar,

UserForm3 nesnesindeki CommandButton üzerinde yazan sayfa isimlerinizi aynı yaptıktan sonra aşağıdaki kodu deneyin.

Örnek;

Sayfa adınız "Malzeme_Listesi" ama butondaki isim "Malzeme Listesi" şeklindedir. İkisinide aynı yaptıktan sonra kodu deneyin.

Kod:
Private Sub UserForm_Initialize()
    Dim Nesne As Control
    
    For Each Nesne In MultiPage1.Pages(3).Controls
        If TypeName(Nesne) = "CommandButton" Then
            If Nesne.Caption <> "Ana Sayfa" And Nesne.Caption <> "Çıkış" Then
                If Sheets(Nesne.Caption).Visible = False Then
                    Nesne.Enabled = False
                End If
            End If
        End If
    Next
End Sub

Korhan hocam teşekkür ederim.
Userformdaki multipage de 4 adet sayfa var. Yazdığınız kod sadece 4.sayfadaki butonlarda işlem yapıyor. Ancak 3.sayfada da pasif yapılması gereken butonlar var.
 
Selamlar,

İkinci bir döngü kurarak form üzerindeki nesneleri kontrol edebilirsiniz. Aşağıdaki kodu inceleyiniz.

Tabiki kodun hata vermemesi için sayfa isimlerinizle butonlarda yazan isimleri aynı yapmayı unutmayın.

Kod:
Private Sub UserForm_Initialize()
    Dim Nesne As Control
 
    For Each Nesne In MultiPage1.Pages(3).Controls
        If TypeName(Nesne) = "CommandButton" Then
            If Nesne.Caption <> "Ana Sayfa" And Nesne.Caption <> "Çıkış" Then
                If Sheets(Nesne.Caption).Visible = False Then
                    Nesne.Enabled = False
                End If
            End If
        End If
    Next
 
    For Each Nesne In MultiPage1.Pages(2).Controls
        If TypeName(Nesne) = "CommandButton" Then
            If Nesne.Caption <> "Ana Sayfa" And Nesne.Caption <> "Çıkış" And Nesne.Caption <> "Kullanıcı Hesabı" Then
                If Sheets(Nesne.Caption).Visible = False Then
                    Nesne.Enabled = False
                End If
            End If
        End If
    Next
End Sub
 
Bir rica..

Sayın s.savaş;

İyi akşamlar ve pazarlar..

Sayın Korhan Ayhan'ın eklediği kodlara göre, dosyanızın son halini sitemize eklemeniz mümkün mü?

Emek, katkı ve paylaşımınız için teşekkürler..
 
Korhan hocam ilginize teşekkür ederim.
Dediklerinizi aynen uyguladım, fakat gene hata mesajı aldım.
Bende gizlenen bütün sheetleri Multipage1 deki 4.page taşıdım, sorun çözülmüş oldu.
İyi akşamlar.
 
Sayın s.savaş;

İyi akşamlar ve pazarlar..

Sayın Korhan Ayhan'ın eklediği kodlara göre, dosyanızın son halini sitemize eklemeniz mümkün mü?

Emek, katkı ve paylaşımınız için teşekkürler..

Elbette dostum, nedemek siteden aldığımız bilgileri burada tekrar paylaşmaktan mutluluk duyarım.
Dosyanın orjinal halini ekliyorum, verileri ve kurum bilgilerini kendinize göre uyarlayınız. Bazı sayfalarda sayfa koruması olabilir, sayfa korumasını kaldır demeniz yeterli olacaktır.Yani şifresizdir.Menü sayfasında iki adet userform vardır, kısa yolu ctrl+a ve ctrl+s tuşları ile kullanabilirsiniz.
Emeği geçen herkese teşekkür ederim.
 

Ekli dosyalar

İnceliğiniz ve ilginiz için teşekkürler..

Başarılar...
 
Geri
Üst