Kişisel blog sayfa yenilikleri

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,271
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Merhabalar;
Çoğu kimsenin ilgisini çekmeyebilir ancak meraklısı için faydalı bir çalışma hazırladım.
Konu, ortak TextBox/ComboBox' larda Enter/Exit olaylarının güvenli ve stabil biçimde eklenmesi ve API fonksiyonlarının declare edilmeden hızlı çağrılar yapmak için TypeLibrary (.TLB) dosyasının kullanımı üzerinedir.


.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,313
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Eline sağlık dostum, denedim ... stabil çalışıyor.

Userform'a çalışma sırasında (run time) yeni bir TextBox ekledikten sonra "UserForm_Activate" yordamındaki kodu bir kez daha çalıştırınca, yeni eklenen TextBox nesnesi de başarılı bir şekilde cevap veriyor.

.
 
Son düzenleme:

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,271
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Bunu hatırlattığın iyi oldu. UserForm_Activate olayı şu şekilde revize edildiğinde çalışma zamanı nesneleri için de geçerli olur.

C#:
Private Sub UserForm_Activate()
    Dim ctrl As Control, cls As CommonControlEnterExit
   
    Set col = New Collection
   
    For Each ctrl In Me.Controls
        Set cls = New CommonControlEnterExit
        cls.SetToVariable ctrl
        col.Add cls
    Next
   
    'RunTime control...
    Set ctrl = Me.Controls.Add("Forms.TextBox.1", "txtRuntime", True)
    ctrl.Top = 101.25
    ctrl.Left = 67.5
    ctrl.Text = "RunTime TextBox"
    '
    Set cls = New CommonControlEnterExit
    cls.SetToVariable ctrl
    col.Add cls
       
    If TypeOf Me.ActiveControl Is MSForms.TextBox Or _
        TypeOf Me.ActiveControl Is MSForms.ComboBox Then
       
        Me.ActiveControl.BackColor = vbYellow
    End If
   
End Sub
.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,547
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Harika görünüyor. Paylaşımınız için teşekkürler. Elinize emeğinize sağlık..
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,313
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Üstad, bende resimdeki hatayı verdi..... sanırım benim sistemde eksik birşeyler var.


Capture.PNG
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,271
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Dil ayarlarına takılmasın diye CHARSET=NONE yapmıştım ama yine de aramış galiba...
Aşağıdaki bağlantıdaki 32bit olan dll'leri "FB\32" isimli klasöre, 64bit içinde olnaları da "FB\64" isimli klasöre çıkardıktan sonra dener misin?


.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,313
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Üstad şimdi oldu .... eline, koluna, yüreğine sağlık .....

Not: Bu arada, tüm Excel dosyalarını kapattıktan sonra yeni bir Excel uygulaması başlattığımda menüler ve formül çubuğu .... hiçbirşey kalmadı ortalıkta. Sanırım Application nesnesine yaptığın müdahaleyi bir şekilde geri alman da gerekiyor.

Benim gibi bu durumla karşılaşanlar, Alt+F11 ile VBA editörüne geçip aşağıdaki kodu kopyaladıktan sonra çalıştırarak durumu düzeltebilirler.

C#:
Sub Test()
    Application.DisplayFullScreen = False
End Sub
.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,547
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba Zeki Bey,

Bu işlerle uğraşan kişiler için eşsiz bir kaynak olmuş. Elinize emeğinize sağlık.

Paylaşımınız için çok teşekkürler.
 
Üst