Cara membuang / memecah teks dan nombor dalam sel excel
Tutorial ini menunjukkan beberapa kaedah untuk memisahkan teks dan nombor dalam sel Excel, menggunakan kedua-dua fungsi terbina dalam dan fungsi VBA tersuai. Anda akan belajar bagaimana untuk mengekstrak nombor semasa mengeluarkan teks, mengasingkan teks semasa membuang nombor, dan akhirnya, memecah data ke dalam dua lajur yang berbeza.
Katakan data anda mempunyai lajur di mana teks dan nombor intermingled. Untuk data yang konsisten, fungsi mudah seperti LEFT
, RIGHT
, dan MID
mungkin cukup. Walau bagaimanapun, data dunia sebenar sering tidak konsisten, dengan nombor yang muncul sebelum, selepas, atau dalam teks. Penyelesaian di bawah menangani kerumitan ini.
Mengeluarkan teks untuk menyimpan nombor (Excel 365, 2021, 2019):
Microsoft Excel 2019 memperkenalkan fungsi TEXTJOIN
, yang memudahkan tugas ini. Formula di bawah leverage TEXTJOIN
, MID
, ROW
, INDIRECT
, SEQUENCE
, dan IFERROR
untuk mencapai ini.
Untuk Excel 365 dan 2021:
=TEXTJOIN("",TRUE,IFERROR(MID(A2,SEQUENCE(LEN(A2)),1)*1,""))
Untuk Excel 365 - 2019:
=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)*1,""))
(Dalam Excel 2019, ini memerlukan CTRL Shift Enter untuk entri formula array. Dalam array dinamik Excel, mudah masuk mudah.)
Formula ini melangkah melalui setiap watak, mendarab dengan 1 untuk menukar nombor; Watak bukan angka menjadi kesilapan, dikendalikan oleh IFERROR
untuk meninggalkan rentetan kosong. TEXTJOIN
kemudian menggabungkan bilangan yang tinggal.
Fungsi VBA tersuai (semua versi Excel):
Untuk versi Excel yang lebih lama atau pendekatan yang lebih mudah, fungsi VBA tersuai menawarkan penyelesaian yang diperkemas. Dua versi disediakan:
Kod VBA 1 (watak demi watak):
Fungsi RemoveXt (str as string) Dim sres sebagai rentetan sres = "" Untuk i = 1 hingga len (str) Jika isnumeric (mid (str, i, 1)) maka sres = sres & mid (str, i, 1) Seterusnya saya Membuangetext = sres Fungsi akhir
Kod VBA 2 (ungkapan biasa):
Fungsi ReveText (str as string) sebagai rentetan Dengan createObject ("vbscript.regexp") .Global = benar .Pattern = "[^0-9]" MembuangText = .Replace (str, "") Berakhir dengan Fungsi akhir
Gunakan fungsi ini dengan =RemoveText(A2)
. Kod 2 (menggunakan ungkapan biasa) secara amnya melakukan lebih baik pada dataset yang besar.
Mengeluarkan nombor untuk menyimpan teks (Excel 365, 2021, 2019):
Formula yang sama boleh mengekstrak teks semasa mengeluarkan nombor. Sekali lagi, menggunakan TEXTJOIN
, MID
, ROW
, INDIRECT
, SEQUENCE
, IFERROR
, dan ISERROR
:
Untuk Excel 365 dan 2021:
=TRIM(TEXTJOIN("",TRUE,IF(ISERROR(MID(A2,SEQUENCE(LEN(A2)),1)*1),MID(A2,SEQUENCE(LEN(A2)),1),"")))
Untuk Excel 365 - 2019:
=TRIM(TEXTJOIN("",TRUE,IF(ISERROR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)*1),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),"")))
Fungsi TRIM
menghilangkan ruang utama/trailing.
Fungsi VBA tersuai untuk mengeluarkan nombor (semua versi Excel):
Sama dengan fungsi VBA sebelumnya, berikut adalah dua versi untuk mengeluarkan nombor dan menyimpan teks:
Kod VBA 1 (watak demi watak):
Fungsi penyingkiran (str as string) Dim sres sebagai rentetan sres = "" Untuk i = 1 hingga len (str) Sekiranya tidak ada (pertengahan (str, i, 1)) maka sres = sres & pertengahan (str, i, 1) Seterusnya saya Penyingkiran = sres Fungsi akhir
Kod VBA 2 (ungkapan biasa):
Fungsi penyingkiran (str as string) sebagai rentetan Dengan createObject ("vbscript.regexp") .Global = benar .Pattern = "[0-9]" Penyingkiran = .replace (str, "") Berakhir dengan Fungsi akhir
Gunakan ini dengan =TRIM(RemoveNumbers(A2))
.
Memisahkan teks dan nombor ke lajur berasingan:
Fungsi VBA tersuai tunggal boleh mengendalikan kedua -dua teks dan pengekstrakan nombor:
Kod VBA 1 (watak demi watak):
Fungsi splittextNumbers (str as string, is_remove_text sebagai boolean) sebagai rentetan Dim Snum, Stext, Schar sebagai String snum = stext = "" Untuk i = 1 hingga len (str) schar = pertengahan (str, i, 1) Jika isnumeric (schar) maka snum = snum & schar else stext = stext & schar Seterusnya saya Jika is_remove_text kemudian spitextNumbers = snum lain splittextNumbers = stext Fungsi akhir
Kod VBA 2 (ungkapan biasa):
Fungsi splittextNumbers (str as string, is_remove_text sebagai boolean) sebagai rentetan Dengan createObject ("vbscript.regexp") .Global = benar Jika is_remove_text kemudian .pattern = "[^0-9]" else .pattern = "[0-9]" SplitTextNumbers = .Replace (str, "") Berakhir dengan Fungsi akhir
Penggunaan =SplitTextNumbers(A2,TRUE)
untuk menyimpan nombor, dan =TRIM(SplitTextNumbers(A2,FALSE))
untuk menyimpan teks.
Menggunakan alat khusus:
Pertimbangkan untuk menggunakan tambahan Excel khusus untuk penyingkiran watak jika anda lebih suka pendekatan yang lebih visual dan mesra pengguna. Tutorial menyebutkan "suite muktamad" tambahan dengan ciri "keluarkan aksara".
Panduan komprehensif ini menyediakan pelbagai penyelesaian yang memenuhi versi Excel yang berbeza dan keutamaan pengguna. Ingat untuk menyesuaikan rujukan sel seperti yang diperlukan untuk data khusus anda.
Atas ialah kandungan terperinci Cara membuang / memecah teks dan nombor dalam sel excel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial ini menunjukkan bagaimana untuk mencari nilai N atas dalam dataset dan mengambil data yang berkaitan dengan menggunakan formula Excel. Sama ada anda memerlukan kriteria tertentu, terendah, atau mereka yang memenuhi kriteria tertentu, panduan ini menyediakan penyelesaian. Findi

Tutorial ini menunjukkan kepada anda bagaimana untuk menambah senarai dropdown ke templat e -mel Outlook anda, termasuk pelbagai pilihan dan populasi pangkalan data. Walaupun Outlook tidak secara langsung menyokong dropdowns, panduan ini menyediakan penyelesaian kreatif. Templat e -mel SAV

Dalam tutorial ini, anda akan belajar bagaimana menggunakan ungkapan biasa dalam Excel untuk mencari dan mengekstrak substrings yang sepadan dengan corak yang diberikan. Microsoft Excel menyediakan beberapa fungsi untuk mengekstrak teks dari sel. Fungsi -fungsi itu dapat mengatasi kebanyakan

Tutorial ini menyediakan panduan komprehensif untuk ciri pengisian kilat Excel, alat yang berkuasa untuk mengautomasikan tugas kemasukan data. Ia meliputi pelbagai aspek, dari definisi dan lokasinya untuk penggunaan dan penyelesaian masalah lanjutan. Memahami Fla Excel

Tutorial ini menerangkan cara menggunakan fungsi FV Excel untuk menentukan nilai masa depan pelaburan, merangkumi kedua-dua pembayaran biasa dan deposit sekaligus. Perancangan kewangan yang berkesan bergantung kepada pemahaman pertumbuhan pelaburan, dan panduan ini terbukti

Artikel ini menerangkan cara mengakses dan menggunakan kalendar bersama dalam aplikasi desktop Outlook, termasuk mengimport fail icalendar. Sebelum ini, kami meliputi berkongsi kalendar Outlook anda. Sekarang, mari kita meneroka bagaimana melihat kalendar yang dikongsi bersama

Tutorial ini menerangkan cara mengira median data berangka dalam Excel menggunakan fungsi median. Median, ukuran utama kecenderungan pusat, mengenal pasti nilai pertengahan dalam dataset, yang menawarkan perwakilan yang lebih mantap dari Tenden Central

Cara terpantas untuk mengubah lajur atau baris nilai ke dalam array dua dimensi menggunakan fungsi wrapcols atau wraprows. Sejak hari -hari awal Excel, ia telah sangat baik untuk mengira dan menganalisis nombor. Tetapi memanipulasi
