• DİKKAT

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

Me.Controls Sorunu

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
208
Excel Vers. ve Dili
Excel 2021
Kod:
Public Function FORM_YAZI_BUYUK()
Dim ctrl As Object
For Each ctrl In Me.Controls
If TypeName(ctrl) = "OptionButton" Then
ctrl.Caption = UCase(Replace(Replace(ctrl.Caption, "ı", "I"), "i", "İ"))
End If
If TypeName(ctrl) = "Label" Then
ctrl.Caption = UCase(Replace(Replace(ctrl.Caption, "ı", "I"), "i", "İ"))
End If
If TypeName(ctrl) = "CheckBox" Then
ctrl.Caption = UCase(Replace(Replace(ctrl.Caption, "ı", "I"), "i", "İ"))
End If
Next
End Function
Module'de bulunan bu kod'da "me.controls " hata ("invalid use of me keyword") veriyor. Userformun ismini yazdığımda çalışıyor. 20 adet userform için tek tek mi yazmalıyım?
 
Fonksiyonunuzu biraz geliştirerek daha esnek kullanabiliriz... Yani hali aşağıdadır:

PHP:
Sub FORM_YAZI_BUYUK(ByVal argForm As UserForm)
    Dim ctrl As Object
   
    For Each ctrl In argForm.Controls
        Select Case TypeName(ctrl)
            Case "OptionButton", "Label", "CheckBox"
                ctrl.Caption = UCase(Replace(Replace(ctrl.Caption, "ı", "I"), "i", "İ"))
        End Select
    Next
End Sub

Herhangi bir UserForm içinden aşağıdaki gibi çağırabiliyoruz:

PHP:
Private Sub CommandButton1_Click()
    Call Module1.FORM_YAZI_BUYUK(Me)
End Sub

Kolay gelsin...

.
 
Hocam eline sağlık. Çok ama çok teşekkür ederim. Bununla birlikte birçok sorunumu da halletmiş oldun. (y)(y)(y)
 
Geri
Üst