Forma Yetki Vermek

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
Ekteki excel listesine göre formu açtığımda butonların listeye göre görünmesini veya görünmemesini istiyorum.


Kod:
Public Function yetki_uygula()
adm = XED_FORM.USER.Value 'kullanıcı adlarını buradan alıyor'

Dim ctrl As Control
Dim oneform As Object

Call Ado_Baglan
Set RS = CreateObject("adodb.recordset")
sorgu = "Select * from [USER]"
RS.Open sorgu, con, 1, 3

Do Until RS.EOF

fx = RS("FORM_ADI").Value

For Each oneform In UserForms
Set fx = oneform
    For Each ctrl In oneform.Controls
        If ctrl.Name = RS("BUTON_ADI").Value And RS("OLAY").Value = "Enabled" Then: ctrl.Enabled = RS(adm).Value
        If ctrl.Name = RS("BUTON_ADI").Value And RS("OLAY").Value = "Visible" Then: ctrl.Visible = RS(adm).Value
    Next
Next

RS.movenext
Loop

RS.Close: con.Close
Set con = Nothing: Set RS = Nothing: sorgu = ""
End Function
Ben bu şekilde yaptım ama her satırda çalışmıyor. Örneğin "XED_FORM.Toolbar1.Buttons(9).enabled =true" ifadesini çalıştırmıyor

Kullanıcı
 

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
Konu Hakkında Bilgisi Olan Yok mudur?
Kod:
Public Function yetki_uygula()
adm = XED_FORM.USER.Value

Dim ctrl As Control
Dim oneform As Object

Call Ado_Baglan
Set RS = CreateObject("adodb.recordset")

For Each oneform In UserForms

    sorgu = "Select * from [USER] where [FORM_ADI] = '" & oneform.Name & "'"
    RS.Open sorgu, con, 1, 3
    Do While Not RS.EOF
    
            For Each ctrl In oneform.Controls
            If ctrl.Name = RS("BUTON_ADI").Value And RS("OLAY").Value = "Enabled" Then: ctrl.Enabled = RS(adm).Value
            If ctrl.Name = RS("BUTON_ADI").Value And RS("OLAY").Value = "Visible" Then: ctrl.Visible = RS(adm).Value
            Next
    
    RS.movenext
    Loop
    RS.Close

Next
con.Close
Set con = Nothing: Set RS = Nothing: sorgu = ""
End Function
en son bu şekilde düzenledim ama yine tam istediğim gibi çalışmıyor!
 
Üst