Formula Excel: Jalur aksara bukan angka -

Formula generik

(=TEXTJOIN("",TRUE,IFERROR(MID(A1,ROW(INDIRECT("1:100")),1)+0,"")))

Ringkasan

Untuk mengeluarkan watak bukan angka dari rentetan teks, anda boleh mencuba formula eksperimen ini berdasarkan fungsi TEXTJOIN, fungsi baru di Excel 2019. Dalam contoh yang ditunjukkan, formula dalam C5 adalah:

(=TEXTJOIN("",TRUE,IFERROR(MID(B5,ROW(INDIRECT("1:100")),1)+0,"")))

Catatan: ini adalah formula larik dan mesti dimasukkan dengan kawalan + shift + enter.

Penjelasan

Berfungsi dari dalam ke luar, formula MID digunakan untuk mengekstrak teks dalam B5, satu watak pada satu masa. Kuncinya ialah bahagian ROW / INDIRECT:

ROW(INDIRECT("1:100"))

yang membentangkan array yang mengandungi 100 nombor seperti ini:

(1,2,3,4,5,6,7,8… .99,100)

Catatan: 100 mewakili aksara maksimum untuk diproses. Tukar agar sesuai dengan data anda.

Susunan ini masuk ke fungsi MID sebagai argumen start_num . Untuk num_chars , kami menggunakan 1.

Fungsi MID mengembalikan array seperti ini:

("1"; "0"; "0"; ""; "a"; "p"; "p"; "l"; "e"; "s"; ""; ""; ""; " "…)

(item tambahan dalam larik dikeluarkan untuk dibaca)

Untuk tatasusunan ini, kami menambah sifar. Ini adalah muslihat mudah yang memaksa Excel untuk mencuba dan memaksa teks ke nombor. Nilai teks berangka seperti "1", "2", "3", "4" dan lain-lain ditukar, sementara nilai bukan angka gagal dan menimbulkan kesalahan # NILAI. Kami menggunakan fungsi IFERROR untuk menangkap kesalahan ini dan mengembalikan rentetan kosong (""), sementara nilai angka masuk ke dalam array. Hasilnya adalah susunan yang hanya mengandungi nombor dan rentetan kosong:

(1; 0; 0; ""; ""; ""; ""; "";….)

Akhirnya, hasil susunan ini masuk ke fungsi TEXTJOIN sebagai argumen text1 . Untuk pembatas , kami menggunakan rentetan kosong ("") dan untuk ign_empty kami membekalkan BENAR. TEXTJOIN kemudian menggabungkan semua nilai bukan kosong dalam array dan mengembalikan hasilnya.

Catatan: TEXTJOIN akan mengembalikan nombor sebagai teks, misalnya "100," 500 ", dan lain-lain. Sekiranya anda mahukan hasil angka yang benar, tambahkan sifar atau bungkus keseluruhan formula dalam fungsi NILAI.

Artikel menarik...