[Yardım]  Textbox Virgülden Sonra max 2 Karakter Nasıl??

VBA Makrolar ile ilgili sormak istedikleriniz, yapmak istedikleriniz hakkında yardım alabileceğiniz bölümdür.

Textbox Virgülden Sonra max 2 Karakter Nasıl??

İleti#1)  sefa044 » 11 Eyl 2019 09:10

Arkadaşlar userform da 1 den 12 kadar Textbox kutularım var.
Class modül kullanarak bunların keypress olaylarında;
kutulara nokta girilmesini engellemek,
virgülden sonra ise en fazla 2 karaktere izin vermek, kullanıcı 3.karaktere bassa bile keyascii=0 kodu ile engellemek

istiyorum. Enter, Exit olaylarını zaten kullanıyorum. ama bunu Keypress te yapmak istiyorum.
Yardımcı olursanız sevinirim. şkşk
Kullanıcı avatarı
sefa044
Yeni Başlamış
 
Kayıt: 11 Haz 2018 12:22
Meslek: MÜHENDİS
Yaş: 34
İleti: 17
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: ADANA

Cevap: Textbox Virgülden Sonra max 2 Karakter Nasıl??

İleti#2)  sefa044 » 11 Eyl 2019 10:24

Sorunu kendim çözdüm arkadaşlar. Sizlere de faydalı olması açısından paylaşıyorum.

Class Module adını txtparaclass olarak belirledim.
Class Module içine;

Option Explicit
Public WithEvents txt_para As MSForms.Textbox

Private Sub txt_para_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr(txt_para, ",") <> 0 Then 'Eğer Metin Virgül İçeriyorsa;
Dim kaçıncı
kaçıncı = WorksheetFunction.Search(",", txt_para, 1) 'MBUL Fonksiyonu
If Len(txt_para) >= kaçıncı + 2 Then KeyAscii = 0
End If
End Sub

Userform kod sayfasına;

Option Explicit
Dim TBG(412 To 423) As New txtparaclass

Private Sub UserForm_Initialize()
Dim TE As Integer
For TE = 412 To 423
Set TBG(TE).txt_para = Controls("TextBox" & TE)
Next
End Sub
Kullanıcı avatarı
sefa044
Yeni Başlamış
 
Kayıt: 11 Haz 2018 12:22
Meslek: MÜHENDİS
Yaş: 34
İleti: 17
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: ADANA


Forum Genel Makro Soruları

Online Kullanıcılar

Bu forumu görüntüleyenler: AhrefsBot, Google Adsense [Bot] ve 2 misafir

Bumerang - Yazarkafe