Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara menghapus karakter non numerik dari sel di Excel?

Misalkan Anda memiliki lembar kerja dengan banyak data seperti itu ABCD4578124YUIOH, dan Anda hanya ingin menghapus karakter non-numerik  ABCDYUIOH tapi pertahankan karakter numerik dalam sel. Tentu saja, Anda dapat menghapus karakter tersebut satu per satu, tetapi di sini Anda dapat menghapus karakter non-numerik dari sel dengan cepat seperti berikut:

Hapus karakter non-numerik dengan kode VBA

Alat praktis untuk menghapus karakter non-numerik dengan satu klik


Hapus karakter non-numerik dengan kode VBA

Untuk menghapus karakter non-numerik dari kisaran dengan kode VBA, lakukan hal berikut:

1. Klik Pengembang > Visual Basic untuk membuka Microsoft Visual Basic untuk aplikasi jendela. Dalam Microsoft Visual Basic untuk aplikasi window, klik Menyisipkan > Modul, lalu salin dan tempel kode berikut ke dalam modul:

VBA: Hapus semua karakter non-numerik

Sub RemoveNotNum()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[0-9]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

2. Kemudian klik tombol untuk menjalankan kode, Dalam bermunculan KutoolsforExcel kotak dialog, pilih rentang dengan karakter non-numerik yang ingin Anda hapus, lalu klik OK tombol. Lihat tangkapan layar:

doc menghapus karakter non numerik 1 salinan

3. Kemudian semua karakter non-numerik dalam rentang yang dipilih dihapus.

doc menghapus karakter non numerik 2

Jika angka dengan titik desimal, Anda dapat menggunakan VBA berikut:

Sub RemoveNotNum()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[0-9.]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

Anda dapat melihat hasilnya seperti gambar di bawah ini:

doc menghapus karakter non numerik 3


Alat praktis untuk menghapus karakter non-numerik dengan satu klik

Untuk menghapus karakter non-numerik dalam suatu rentang, Kutools untuk Excel'S Hapus Karakter utilitas dapat menyelesaikannya dengan satu klik.

Kutools untuk Excel : dengan lebih dari 300 add-in Excel yang praktis, gratis untuk dicoba tanpa batasan dalam 30 hari. 

Setelah menginstal Kutools untuk Excel, lakukan seperti di bawah ini:

1. Sorot rentang yang ingin Anda hapus karakter non-numerik. Klik Kutools > Teks > Hapus Karakter.

doc menghapus karakter non numerik 4

2. di Hapus Karakter kotak dialog, periksa Non-numerik pilihan dalam Hapus Karakter bagian, dan kemudian klik OK or Apply tombol. Dan karakter non-numerik segera dihapus dari pilihan. Lihat tangkapan layar:

doc menghapus karakter non numerik 5

Klik untuk Mengunduh Kutools for Excel dan uji coba gratis Sekarang!

Untuk informasi lebih rinci tentang Hapus Karakter dari Kutools for Excel, silakan kunjungi Hapus deskripsi fitur karakter.


Demo: Hapus karakter numerik, alfabet, tidak dapat dicetak atau alfanumerik dari sel

Kutools untuk Excel: dengan lebih dari 300 add-in Excel yang praktis, gratis untuk dicoba tanpa batasan dalam 30 hari. Unduh dan uji coba gratis Sekarang!

Artikel terkait:


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

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!
officetab bawah
Urutkan komentar berdasarkan
komentar (13)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
contoh kode untuk komentar
Komentar ini diminimalkan oleh moderator di situs
terima kasih bekerja dengan baik
Komentar ini diminimalkan oleh moderator di situs
tidak akan lebih baik untuk mengganti metode kotak input dengan hanya mengatur WorkRng seperti ini: Set WorkRng = Intersect(ActiveSheet.UsedRange, Selection) seperti itu jika pengguna memilih seluruh kolom, itu tidak akan menghasilkan kesalahan apa pun.
Komentar ini diminimalkan oleh moderator di situs
Mengagumkan Bekerja HEBAT!!!!!!!!!!
Komentar ini diminimalkan oleh moderator di situs
Wow. yang bekerja, persis apa yang saya butuhkan. Terima kasih,
Komentar ini diminimalkan oleh moderator di situs
Saya menerima kesalahan ketika saya menekan tombol > run di pengembang: Kompilasi Kesalahan: Diharapkan: akhir pernyataan dan kata "non" dalam non-numerik disorot
Komentar ini diminimalkan oleh moderator di situs
Gunakan Rumus ini untuk mengganti karakter yang ada dengan yang baru =SUBSTITUTE(text,old_text,new_text,[instance_num]) for ex-=SUBSTITUTE(TRIM(G1),"/","") Wish U all Happy Easter 2015
Komentar ini diminimalkan oleh moderator di situs
Thanx Guys untuk pekerjaan yang bagus. Scriptnya luar biasa dan berhasil. Tetap semangat.
Komentar ini diminimalkan oleh moderator di situs
Hanya ingin memberi tahu Anda bahwa jika string dimulai dengan nol, atau dimulai dengan huruf, diikuti oleh nol, diikuti oleh sisa string, ini akan menghapus semua nol awal. Ini aneh karena tidak menghilangkan angka nol jika angka tersebut berada di antara angka bukan nol lainnya di dalam string, hanya jika angka tersebut memulai string atau merupakan angka pertama setelah huruf awal dalam sebuah string. Contoh. 0060100 akan keluar sebagai 60100 PFF057726 akan keluar sebagai 57726. Beri tahu saya jika Anda memiliki penjelasan untuk ini dan dapat memikirkan solusi. Terima kasih.
Komentar ini diminimalkan oleh moderator di situs
Kirimkan saya di id email saya
Komentar ini diminimalkan oleh moderator di situs
Hai, saya ingin menggunakan makro ini tetapi ingin menentukan rentang sebelumnya. Bisakah Anda memberi tahu saya cara menentukan kisaran sebelumnya. Terima kasih, Samit
Komentar ini diminimalkan oleh moderator di situs
VBA bekerja dengan baik. Saya memodifikasinya agar selalu berfungsi pada kolom, seperti yang ditunjukkan:

Untuk Setiap Sel Dalam Rentang("B2:B" & ActiveSheet.UsedRange.Rows.Count)

xKeluar = ""

Untuk i = 1 Untuk Len(Nilai Sel)

xTemp = Pertengahan(Nilai Sel, i, 1)

Jika xTemp Suka "[0-9]" Lalu

xStr = xTemp

Lain

xStr = ""

End If

xKeluar = xKeluar & xStr

Selanjutnya saya

Sel.Nilai = xOut

Next

Saya juga menggunakan ini untuk mengurutkan kolom berdasarkan digit terakhir, mengubah bagian terakhir menjadi Cell.Value = Right(xOut, 1) lalu mengurutkannya secara numerik.
Komentar ini diminimalkan oleh moderator di situs
HI Terima kasih atas pengkodeannya, saya mendapatkan kesalahan sintaks yang disorot pada For i = 1 To Len(Rng.Value) dan debug Sub RemoveNotNum() disorot dengan warna kuning.. mohon saran.
Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL