Rumus Excel: Hapus kata terakhir -

Daftar Isi

Formula umum

=MID(A1,1,FIND("~",SUBSTITUTE(A1," ","~",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))-1)

Ringkasan

Untuk menghapus kata terakhir dari string teks, Anda dapat menggunakan rumus yang didasarkan pada fungsi MID, dengan bantuan dari SUBSTITUTE, LEN, dan FIND. Dalam contoh yang diperlihatkan, rumus di sel B5 adalah:

=MID(B5,1,FIND("~",SUBSTITUTE(B5," ","~",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))))-1)

Penjelasan

Rumus ini menggunakan fungsi MID untuk menghapus kata terakhir dari string teks. Tantangan utamanya adalah mencari tahu di mana kata terakhir dimulai.

Rumusnya agak berbelit-belit, tetapi langkah-langkahnya sederhana. Pertama-tama kita menghitung berapa banyak spasi yang ada di teks menggunakan LEN dan SUBSTITUTE. Selanjutnya, kami menggunakan argumen "instance" yang agak tidak jelas dalam fungsi SUBSTITUTE untuk mengganti spasi terakhir dengan tilde (~). Terakhir, kami menggunakan FIND untuk mencari tahu di mana letak tilde, dan fungsi MID untuk membuang semuanya setelah tilde.

Bekerja dari dalam ke luar, kami menggunakan fungsi LEN dan SUBSTITUTE untuk menghitung berapa banyak ruang yang muncul berikutnya:

LEN(B5)-LEN(SUBSTITUTE(B5," ","")) // returns 6

Untuk teks di B5, ini mengembalikan 6. Halaman ini menjelaskan bagian rumus ini secara lebih rinci. Ini memberitahu kita bahwa kita ingin memotong teks pada karakter spasi ke-6.

Catatan: jika kata dipisahkan oleh lebih dari satu spasi, Anda akan ingin menormalkan spasi terlebih dahulu dengan fungsi TRIM.

Nomor 6 kemudian dicolokkan ke PENGGANTI lain sebagai "nomor contoh":

SUBSTITUTE(B5," ","~",6) // insert tilde

Di sini, kami mengganti instance ke-6 dari spasi ("") dengan tilde (~). Setelah SUBSTITUTE berjalan, ia mengembalikan string ini:

"It's been seven hours and fifteen~days"

Catatan: kami menggunakan tilde (~) hanya karena itu karakter yang jarang muncul. Anda dapat menggunakan karakter apa pun yang Anda suka, selama tidak muncul di teks sumber.

Selanjutnya, kami menggunakan fungsi FIND untuk menemukan tilde:

FIND("~","It's been seven hours and fifteen~days")-1

FIND mengembalikan 34, karena tilde adalah karakter ke-34. Kami mengurangi 1 dari angka ini, karena kami tidak ingin menyertakan spasi terakhir di hasil akhir. Sekarang kita dapat menyederhanakan rumusnya menjadi:

=MID(B5,1,33) // extract final text

Fungsi MID kemudian mengembalikan karakter 1-33:

"It's been seven hours and fifteen"

Dengan pembatas khusus

Rumus yang sama dapat digunakan dengan pembatas yang berbeda. Misalnya, untuk menghapus semua teks setelah garis miring terakhir "/", Anda dapat menggunakan:

=MID(A1,1,FIND("~",SUBSTITUTE(A1,"/","~",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))))-1)

Hapus n kata terakhir

Anda dapat menyesuaikan rumus untuk menghapus 2 kata terakhir, 3 kata terakhir, dll. Bentuk umumnya adalah:

=MID(A1,1,FIND("~",SUBSTITUTE(A1,d,"~",LEN(A1)-LEN(SUBSTITUTE(A1,d,""))-(n-1)))-1)

di mana d adalah pembatas, dan n adalah jumlah kata yang akan dihapus.

Artikel yang menarik...