• DİKKAT

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

VBA Hakkında

Katılım
15 Şubat 2006
Mesajlar
23
Merhaba arkadaşlar

Makrolarda istediğim bir çok şeyi yapabiliyorum formlar oluşturabiliyorum vs.

Ama form oluşturmada textbox larla ilgili bilmediğim bazı şeyler var bu konuda yardımcı olabilirseniz çok sevinirim.

1. Texboxların öncelikleri nasıl oluyor örneğin ben makroyu çalıştırdığımda texbox1 texbox2 texbox3 texbox4 texbox5 arasında enter ile geçiş yapmak istiyorum. Yani makroyu çalıştırdığımda texbox1 kutucu içerisi seçili olarak gelsin ve enter yaptığımda texbox2 3 4 5 diye devam etsin istiyorum texbox1 lar bitince enter yaptığımda tamam butonuna geçsin istiyorum. Bunu nasıl yapabilirim buradaki mantık nedir?

2. bir tane texbox 'ımı tarih formatı olarak ayarlamak istiyorum. Yani gün.ay.yıl olarak texbox içeriği olsun istiyorum. burada insert özelliği seçili olsun yani klavyeden rakamları girmeye başladığımda 04.03.2007 üzerine yazmış olayım noktaları atlasın falan gibi. bununla ilgili bir örnek çalışma var mıdır ?

Şimdiden çok teşekkürler
 
Private Sub iptalbuton_Click()
tarihok = 0
Me.Hide
Exit Sub
End Sub

Private Sub UserForm_Activate()
tamambuton = False
Sheets("AYARLAR").Select
secilitarih.Value = Range("b3")
secilitarih.Value = FormatDateTime(secilitarih.Text, vbShortDate)
tarihok = 0
Sheets("db").Select
End Sub

Private Sub tamambuton_Click()
tarihok = 1
Sheets("AYARLAR").Select
Range("b3") = secilitarih.Value
Sheets("db").Select
tarihformu.Hide

Exit Sub
End Sub
_____________________________________

04.03.2007 secili tarih böyle geliyor.

arkadaşlar yukarıdaki secilitarih te tarih formatını ayarladım ancak burada veri girişi yapılırken gün girdiğinde otomatik olarak aya nasıl geçer. Yani noktayı nasıl atlar.

birde bu formu açtığımda tarih alanında nasıl seçili olarak getirebilirim ?
 
Birinci sorunuz için nesnelerin tab sıralamasını ayarlamanız gerekir bunun içinde userform seçili iken view-taborder ile nesnelerin enterle geçiş sırasını düzenleyebilirsiniz.

İkinci sorunu için bence textboxun exit olayına aşağıdaki koud yazın, imleç textboxtan ayrıldığında tarih formatı düzenlenmiş olur, Change olayında tarih formatı verme işi uzun kodlar gerektirir. Aşağıdaki gibi yaparsanız textboxa sadece örneğin 5-6 yazıp entere basarsanız textboxta otomatikman 05 Haziran 2007 yazacaktır.

Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox1 = Format(TextBox1, "dd mmmm yyyy")
End Sub

Tarih textboxını seçili hale getirmek içinde userform_activite olayına aşağıdaki satırı yazmanız yeterlidir.

Kod:
Textbox1.setfocus
 
Geri
Üst