Loncat ke daftar isi utama

Bagaimana cara mencegah karakter khusus masuk di Excel?

Pengarang: Xiaoyang Terakhir Dimodifikasi: 2020-07-08

Untuk beberapa kasus, kami hanya ingin memasukkan huruf atau angka ke dalam sel, dan mencegah pengetikan karakter khusus, seperti @ # $% & dan seterusnya. Apakah ada fungsi di Excel untuk mencegah karakter khusus masuk saat kita memasukkan nilai?

Mencegah karakter khusus masuk dengan Validasi Data

Mencegah karakter khusus masuk dengan kode VBA

Cegah karakter khusus masuk dengan Kutools for Excel ide bagus3


Mencegah karakter khusus masuk dengan Validasi Data

Validasi Data Excel dapat membantu Anda hanya untuk memasukkan nilai alfanumerik. Harap lakukan sebagai berikut:

1. Pilih rentang yang Anda ingin mencegah karakter khusus masuk.

2. Lalu klik Data > Validasi Data > Validasi Data, lihat tangkapan layar:

doc-mencegah-karakter-1

3. di Validasi Data kotak dialog, klik Settings tab, dan pilih Kustom dari mengizinkan daftar drop-down, lalu masukkan rumus ini =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) ke dalam Rumus kotak teks, lihat tangkapan layar:

Catatan:A1 menunjukkan sel pertama dari rentang yang Anda pilih (dari kiri ke kanan).

doc-mencegah-karakter-1

4. Lalu klik OK untuk menutup dialog ini, dan sekarang saat Anda memasukkan nilai yang berisi karakter khusus di kolom yang ditentukan, Anda telah menerapkan opsi, Anda akan mendapatkan pesan peringatan berikut.

doc-mencegah-karakter-1


Mencegah karakter khusus masuk dengan kode VBA

Kode VBA berikut juga dapat membantu Anda mencegah karakter khusus saat memasukkan nilai teks.

1. Tahan ALT + F11 kunci, dan itu membuka Jendela Microsoft Visual Basic for Applications.

2. Kemudian pilih lembar kerja bekas Anda dari kiri Penjelajah Proyek, klik dua kali untuk membuka file Modul, lalu salin dan tempel kode VBA berikut ke dalam kolom kosong Modul:

Kode VBA: mencegah karakter khusus masuk di Excel

Private Const FCheckRgAddress As String = "A1:A100"
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140905
    Dim xChanged As Range
    Dim xRg As Range
    Dim xString As String
    Dim sErrors As String
    Dim xRegExp As Variant
    Dim xHasErr As Boolean
    Set xChanged = Application.Intersect(Range(FCheckRgAddress), Target)
    If xChanged Is Nothing Then Exit Sub
    Set xRegExp = CreateObject("VBScript.RegExp")
    xRegExp.Global = True
    xRegExp.IgnoreCase = True
    xRegExp.Pattern = "[^0-9a-z]"
    For Each xRg In xChanged
        If xRegExp.Test(xRg.Value) Then
            xHasErr = True
            Application.EnableEvents = False
            xRg.ClearContents
            Application.EnableEvents = True
        End If
    Next
    If xHasErr Then MsgBox "These cells had invalid entries and have been cleared:"
End Sub

doc-mencegah-karakter-1

Note: Pada kode di atas, Anda dapat mengubah kisaran A1: A100 of Pribadi Const FCheckRgAddress As String = "A1: A100" skrip ke rentang Anda sendiri yang Anda inginkan untuk mencegah karakter khusus.

3. Kemudian simpan dan tutup kode ini, dan sekarang, saat Anda memasukkan nilai teks dengan beberapa karakter khusus dalam rentang A1: A100, nilai Anda akan dihapus sekaligus, dan Anda bisa mendapatkan pesan peringatan berikut.

doc-mencegah-karakter-1


Cegah karakter khusus masuk dengan Kutools for Excel

Sebenarnya, jika sudah Kutools untuk Excel - Alat praktis dan multi-fungsi, Anda dapat dengan cepat mencegah pengetikan karakter khusus dalam pilihan dengan nya Cegah Pengetikan utilitas dengan satu cek.

Kutools untuk Excel, dengan lebih dari 300 fungsi praktis, membuat pekerjaan Anda lebih mudah. 

Setelah menginstal Kutools for Excel, lakukan seperti di bawah ini :(Unduh Gratis Kutools untuk Excel Sekarang!)

1. Pilih pilihan yang Anda inginkan untuk mencegah pengetikan karakter khusus, dan klik Kutools > Cegah Pengetikan > Cegah Pengetikan. Lihat tangkapan layar:
doc mencegah karakter 10

2. Dalam Cegah Pengetikan dialog, periksa Cegah ketik karakter khusus pilihan. Lihat tangkapan layar:
doc mencegah karakter 7

3. klik Ok, dan dialog muncul untuk mengingatkan Anda bahwa itu akan menghapus Validasi Data jika menerapkan utilitas ini dan klik Yes untuk pergi ke dialog berikutnya, ini akan mengingatkan Anda bahwa utilitas telah bekerja di bagian tersebut. lihat tangkapan layar:
doc mencegah karakter 8

4. klik OK untuk menutup dialog, dan mulai sekarang, dialog peringatan akan muncul saat Anda mencoba memasukkan karakter khusus dalam pemilihan.
doc mencegah karakter 9

Ketik.Jika Anda ingin berhenti mengetik nilai duplikat di kolom, coba gunakan Kutools for Excel's Mencegah Duplikat seperti yang ditunjukkan pada tangkapan layar berikut. Ini berfungsi penuh tanpa batasan dalam 30 hari, silakan unduh dan dapatkan uji coba gratis sekarang.

doc mencegah duplikat doc kutools mencegah pengetikan 2


Artikel terkait:

Bagaimana cara mencegah memasukkan nilai dengan spasi di Excel?

Bagaimana cara mencegah entri duplikat dalam kolom di Excel?

Alat Produktivitas Kantor Terbaik

馃 Kutools AI Ajudan: Merevolusi analisis data berdasarkan: Eksekusi Cerdas   |  Hasilkan Kode  |  Buat Rumus Khusus  |  Analisis Data dan Hasilkan Grafik  |  Aktifkan Fungsi Kutools...
Fitur Populer: Temukan, Sorot, atau Identifikasi Duplikat   |  Hapus Baris Kosong   |  Gabungkan Kolom atau Sel tanpa Kehilangan Data   |   Putaran tanpa Formula ...
Pencarian Super: VLookup Beberapa Kriteria    VLookup Nilai Berganda  |   VLookup di Beberapa Lembar   |   Pencarian Fuzzy ....
Daftar Drop-down Lanjutan: Buat Daftar Drop Down dengan Cepat   |  Daftar Drop Down yang Bergantung   |  Multi-pilih Drop Down List ....
Manajer Kolom: Tambahkan Jumlah Kolom Tertentu  |  Pindahkan Kolom  |  Alihkan Status Visibilitas Kolom Tersembunyi  |  Bandingkan Rentang & Kolom ...
Fitur Unggulan: Fokus Kisi   |  Tampilan Desain   |   Bar Formula Besar    Manajer Buku Kerja & Lembar   |  Perpustakaan Sumberdaya (Teks otomatis)   |  Pemetik tanggal   |  Gabungkan Lembar Kerja   |  Enkripsi/Dekripsi Sel    Kirim Email berdasarkan Daftar   |  Filter Super   |   Filter Khusus (filter tebal/miring/coret...) ...
15 Perangkat Teratas12 Teks Tools (Tambahkan Teks, Hapus Karakter, ...)   |   50 + Grafik jenis (Gantt Chart, ...)   |   40+ Praktis Rumus (Hitung usia berdasarkan ulang tahun, ...)   |   19 Insersi Tools (Masukkan Kode QR, Sisipkan Gambar dari Jalur, ...)   |   12 Konversi Tools (Angka ke Kata, Konversi Mata Uang, ...)   |   7 Gabungkan & Pisahkan Tools (Lanjutan Gabungkan Baris, Pisahkan Sel, ...)   |   ... dan banyak lagi

Tingkatkan Keterampilan Excel Anda dengan Kutools for Excel, dan Rasakan Efisiensi yang Belum Pernah Ada Sebelumnya. Kutools for Excel Menawarkan Lebih dari 300 Fitur Lanjutan untuk Meningkatkan Produktivitas dan Menghemat Waktu.  Klik Di Sini untuk Mendapatkan Fitur yang Paling Anda Butuhkan...

Deskripsi Produk


Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
Comments (12)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Pessoal, segue formul em portug锚s com a quantidade de caracteres limitada a 7:

=E(脡N脷M(SOMARPRODUTO(LOCALIZAR(EXT.TEXTO(A1;LIN(INDIRETO("1:"&N脷M.CARACT(A1)));1);"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ ")));N脷M.CARACT(A1)<8)
This comment was minimized by the moderator on the site
Excelente solucion. como agregas las comillas (") para que sean admitidas?
This comment was minimized by the moderator on the site
Hello herber,

Glad to help. Using the first method, you can use this formula in data validation:
=ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"&CHAR(34))))

The CHAR function takes the ASCII value and returns the corresponding character value. The ASCII value for a double quote is 34. So a double quote will be allowed. Please have a try.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
How to repeat this in other columns?
This comment was minimized by the moderator on the site
When I use your VBA code in excel 2013 it will open up debug option and freezes
This comment was minimized by the moderator on the site
Hi, WilY, if it pops out a dialog as below screenshot shown, just click Yes then OK to enable the code. This issue appears in Excel 2016, too.
This comment was minimized by the moderator on the site
What if i need to prevent in a single cell typing certain characters in combination with length of the text?

For example, i want to prevent the text to be between 5-16 caharacters in comination with certain character prevention? Any advice?
This comment was minimized by the moderator on the site
Maybe you can try the Data Validation function to limit the text length. See screenshot:
This comment was minimized by the moderator on the site
The solution with Data Validation is almost perfect. But I'm able to put "*" character the such protected field. Any advice? Many thanks Pavel
This comment was minimized by the moderator on the site
Instead of SEARCH function try using FIND: =ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))
This comment was minimized by the moderator on the site
how to set length limit ? i mean if i want to set only 12 character or number
This comment was minimized by the moderator on the site
Hello, raj,
To solve your problem, please apply the below formula:
=AND(ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))),LEN(A1)=12)


Please have a try, hope it can help you!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
Rate this post:
0   Characters
Suggested Locations