Salam sejahtera,
Bapak...mohon maaff...dulu saya pernah dapet solusi ini...cuman udah lupa dari thread mana
Cara mengakalinya dengan menggunakan vb, sbb:
semisal nama field yang ingin dipasang input mask pada form bernama Text0
diberikan 2 event, yaitu : AfterUpdate dan GotFocus
Private Sub Text0_AfterUpdate()
Dim sTemp As String
Dim sTemp1 As String
Dim sTemp2 As String
Dim i As Integer
Dim iCount As Integer
iCount = Len(Text0)
For i = 1 To iCount
sTemp1 = Mid(Text0, i, 1)
Select Case sTemp1
Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
sTemp2 = sTemp2 & sTemp1
Case Else
End Select
Next
If Len(sTemp2) = 6 Then
'jika hanya 6 nomor
Text0.InputMask = "(###) ###"
ElseIf Len(sTemp2) = 9 Then
'jika hanya 9 nomor
Text0.InputMask = "(###) ###-###"
ElseIf Len(sTemp2) = 10 Then
'jika hanya 10 nomor
Text0.InputMask = "(###) ###-####"
ElseIf Len(sTemp2) = 11 Then
'jika hanya 11 nomor
Text0.InputMask = "(###) ###-###-##"
ElseIf Len(sTemp2) = 12 Then
'jika hanya 12 nomor
Text0.InputMask = "(###) ###-###-###"
Else
'jika diluar kriteria
End If
End Sub
untuk melepaskan supaya bisa diisi lebih atau kurang pada saat focus ke field Text0, saya waktu itu kasi toleransi 15 digit.
Private Sub Text0_GotFocus()
'memberikan ruang sampai 15 nomor
Text0.InputMask = "(###) ###-###-###-###"
End Sub
Mudah-mudahan seperti yang diharapkan dan disempurnakan lagi.
Salam,
HW
2013/11/27 CGSATU <cgsatu@yahoo.com>
Halo, saya membuat input mask untuk nomor ponsel sbb :(999) 0000-000;0;-:Masalahnya, nomor ponsel dari tahun ke tahun jumlah karakternya bertambah.Jika yang lama (keluaran 20 tahun lalu), angkanya cuma 9 atau 10 angka3 tahun terakhir ini, sudah lazim 11 atau 12 bahkan ada yang 13 angka.Ini membuat input mask yang saya buat "agak susah", karena jika diisi "kurang" tidak mau, diisi "lebih" juga tidak sanggupAda masukan, bagaimana baiknya input mask-nya ?cgsatu (Elang)
__._,_.___
Reply via web post | Reply to sender | Reply to group | Start a New Topic | Messages in this topic (6) |
SPAM IS PROHIBITED
.
__,_._,___
Tidak ada komentar:
Posting Komentar