• DİKKAT

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

Class No.sunu Öğrenmek

Katılım
5 Ocak 2009
Mesajlar
1,586
Excel Vers. ve Dili
2003 Türkçe
Selam,
bir userformdaki 30 adet textbox için aşağıdaki gibi class modul uyguladım. Bu texbox'lara tıkladığımda, classa eklenen no.sunu veya kendi no.sunu öğrenmek istiyorum.
Nasıl öğrenebilirim?
Kod:
Option Explicit

Dim Txt() As New Class1

Private Sub UserForm_Initialize()
    Dim X As Byte
    
    ReDim Preserve Txt(30)
    For X = 1 To 30
    Set Txt(X).Txt = Controls("TextBox" & X)
    Next
End Sub

Kod:
Option Explicit

Public WithEvents Txt As MSForms.TextBox

Private Sub Txt_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
MsgBox "bu mesajda no.sunu öğrenmek istiyorum"
End Sub

mesajda Ya X no.sunu ya da örneğin TextBox1'in 1'ini öğrenmek istiyorum.
Yardımcı olabilirseniz çok sevinirim.

İyi çalışmalar.
 
merhaba, suan bilgisayarim yok telefondan yaziyorum direk bir kodu varmi bilmiyorum ama, texboxinizin adinin len ile uzunlugunu ogrenip, cikan sonuctan 7 cikartarak; kalan kadar sag kisminin degerini alabilirsiniz. En azindan fikrimi soyleyim istedim, kolay gelsin..
 
Aşağıdaki gibi kullanabilirsiniz.

Kod:
MsgBox replace(txt.name,"TextBox","")
 
Aşağıdaki gibi kullanabilirsiniz.

Kod:
MsgBox replace(txt.name,"TextBox","")

merhaba, suan bilgisayarim yok telefondan yaziyorum direk bir kodu varmi bilmiyorum ama, texboxinizin adinin len ile uzunlugunu ogrenip, cikan sonuctan 7 cikartarak; kalan kadar sag kisminin degerini alabilirsiniz. En azindan fikrimi soyleyim istedim, kolay gelsin..

Sayın mustafaine ve Sayın Levent Menteşoğlu,
Her ikinize de çok teşekkür ederim. tam olarak istediğim buydu. Yalnız birşey farkettim; Kod sayfasına TextBox. yazdıktan sonra nokta(.)'dan sonra Name çıkmıyor. ancak el ile yazınca komutlar çalışıyor. Bu bazı nesnelerde başka komutlarda da oluyor. Sebebi nedir? (.) noktadan sonra görünmeyen başka ca komutlar olabilir mi?
İyi çalışmalar.
 
Yalnız birşey farkettim; Kod sayfasına TextBox. yazdıktan sonra nokta(.)'dan sonra Name çıkmıyor. ancak el ile yazınca komutlar çalışıyor. Bu bazı nesnelerde başka komutlarda da oluyor. Sebebi nedir? (.) noktadan sonra görünmeyen başka ca komutlar olabilir mi?
İyi çalışmalar.

Bunun için early binding (erken bağlanma) ve late binding (geç bağlanma) konularını araştırmanızı öneririm.
 
Bunun için early binding (erken bağlanma) ve late binding (geç bağlanma) konularını araştırmanızı öneririm.
Selam,
Sayın Hocam,
Çok teşekkür ederim.
Verdiğiniz her iki konuyu aradım ve tüm sonuçları incedim. Yalnız, ben tam anlatamamış olabiliriz. Kastettiğim şu idi;

class modülde:
Kod:
Public WithEvents deneme As MSForms.TextBox 'deneme

Private Sub deneme_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
MsgBox deneme.Name [COLOR="red"]'burada nokta'dan sonra name çıkmıyor. Ancak, el ile girebiliyor. diğerleri otomatik çıkıyor[/COLOR]End Sub

userformda:
Kod:
Private Sub UserForm_Initialize()
Me.TextBox1.Name [COLOR="Red"]'class modül uyguladığım textboxlarda biri burada nokta'dan sonra Name otomatik çıkıyor[/COLOR]End Sub

İyi çalışmalar.
 
Geri
Üst