Membatasi Penekanan Tombol Keyboard

Adakalanya, Anda ingin suatu kontrol TextBox, hanya bisa diisi dengan angka atau dengan huruf saja. Hal ini bisa saja terjadi ketika Anda menghendaki suatu TextBox yang nantinya akan digunakan untuk suatu proses perhitungan.

Contoh, Anda bermaksud ingin membuat TextBox yang akan digunakan untuk inputan dari Harga Barang, maka tentu saja di dalam TextBox ini tidak boleh terdapat huruf. Atau Anda bermaksud ingin membuat TextBox yang akan digunakan untuk inputan dari Nama Mahasiswa, maka tentu saja di dalam TextBox ini tidak boleh terdapat angka.

Berikut ini sebuah prosedur yang bisa Anda gunakan untuk keperluan tersebut.
Tuliskan kode ini di module.

Public Sub i_Batasan(Tombol As Integer, _
    Optional i_Angka As Boolean, _
    Optional i_Huruf As Boolean)
'Jika nilai dari i_Angka adalah True, maka
    If i_Angka = True Then
'Jika nilai Tombol adalah tidak lebih
'besar dari atau sama dengan Asc("0"), dan ...
'-=> Asc adalah fungsi untuk mengkonversi
     'nilai string menjadi nilai Integer
     'kode ASCII
        If Not (Tombol >= Asc("0") And _
            Tombol <= Asc("9") Or _
            Tombol = vbKeyBack Or _
            Tombol = vbKeyReturn Or _
            Tombol = vbKeyDelete) Then
              'Tombol adalah 0 (tidak berfungsi)
            Tombol = 0
        End If
    End If
    '
    If i_Huruf Then
        If Not (Tombol >= Asc("a") And _
            Tombol <= Asc("z") Or _
            Tombol >= Asc("A") And _
            Tombol <= Asc("Z") Or _
            Tombol = 8 Or _
            Tombol = 46 Or _
            Tombol = 13 Or _
            Tombol = 32) Then
            Tombol = 0
        End If
    End If
End Sub

Untuk contoh pemanggilan, masukan dua buah kontrol TextBox ke dalam form, ubah nama dari TextBox tersebut masing-masing dengan nama “txtAngka” dan txtHuruf”, ketik kode berikut di form:

Private Sub txtAngka_KeyPress(KeyAscii As Integer)
    'Memanggil procedur i_Batasan dengan nilai
    'parameter Angka = True, dan Huruf = False
    i_Batasan KeyAscii, True, False
End Sub
'
Private Sub txtHuruf_KeyPress(KeyAscii As Integer)
    i_Batasan KeyAscii, , True
End Sub

Tentang Novian Agung
Pengangguran

2 Responses to Membatasi Penekanan Tombol Keyboard

  1. fedrorb says:

    minta rumus buat batasannya donk ? bingung ma sintaks di atas.
    rumus sintaks keyascii. tq ya

  2. Ayu says:

    Nice..
    ^,^

Tinggalkan komentar