Isi kandungan
Dalam beberapa artikel lepas, kami telah membincangkan fungsi Teks yang berbeza - fungsi yang digunakan untuk memanipulasi rentetan teks. Hari ini tumpuan kami adalah pada fungsi RIGHT, yang direka untuk mengembalikan bilangan aksara tertentu dari bahagian paling kanan rentetan. Seperti fungsi Teks Excel yang lain, RIGHT adalah sangat mudah dan mudah, namun ia mempunyai beberapa kegunaan yang tidak jelas yang mungkin terbukti membantu dalam kerja anda.
Sintaks fungsi Excel RIGHT
Fungsi RIGHT dalam Excel mengembalikan bilangan aksara yang ditentukan dari penghujung rentetan teks.
Sintaks fungsi RIGHT adalah seperti berikut:
RIGHT(teks, [num_chars])Di mana :
- Teks (diperlukan) - rentetan teks yang anda mahu keluarkan aksara.
- Num_chars (pilihan) - bilangan aksara untuk diekstrak, bermula dari aksara paling kanan.
- Jika num_chars ditinggalkan, 1 aksara terakhir rentetan dikembalikan (lalai).
- Jika num_chars lebih besar daripada jumlah bilangan aksara dalam rentetan, semua aksara dikembalikan.
- Jika num_chars ialah nombor negatif, formula Betul mengembalikan #VALUE! ralat.
Sebagai contoh, untuk mengekstrak 3 aksara terakhir daripada rentetan dalam sel A2, gunakan formula ini:
=RIGHT(A2, 3)
Hasilnya mungkin kelihatan seperti ini:
Nota penting! Fungsi Excel RIGHT sentiasa mengembalikan teksrentetan , walaupun nilai asal ialah nombor. Untuk memaksa formula Right mengeluarkan nombor, gunakannya dalam kombinasi dengan fungsi VALUE seperti yang ditunjukkan dalam contoh ini.
Cara menggunakan fungsi RIGHT dalam Excel - contoh formula
Dalam kehidupan sebenar lembaran kerja, fungsi Excel RIGHT jarang digunakan sendiri. Dalam kebanyakan kes, anda akan menggunakannya bersama-sama dengan fungsi Excel yang lain sebagai sebahagian daripada formula yang lebih kompleks.
Cara mendapatkan subrentetan yang datang selepas aksara tertentu
Sekiranya anda ingin mengekstrak subrentetan yang mengikuti aksara tertentu, gunakan sama ada fungsi SEARCH atau FIND untuk menentukan kedudukan aksara itu, tolak kedudukan daripada jumlah panjang rentetan yang dikembalikan oleh fungsi LEN dan tarik banyak aksara itu dari bahagian paling kanan rentetan asal.
KANAN( rentetan , LEN( rentetan ) - CARI( watak , rentetan ))Katakan, sel A2 mengandungi nama pertama dan nama akhir yang dipisahkan oleh ruang, dan anda bertujuan untuk menarik nama akhir ke sel lain. Hanya ambil formula generik di atas dan anda meletakkan A2 sebagai ganti rentetan dan " " (ruang) dalam rentak aksara:
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2))
Formula akan menghasilkan hasil berikut:
Dengan cara yang sama, anda boleh mendapatkan subrentetan yang mengikuti mana-mana aksara lain, mis. koma, koma bertitik, sempang, dsb. Contohnya, untuk mengeluarkan subrentetan yang datang selepas sempang,gunakan formula ini:
=RIGHT(A2,LEN(A2)-SEARCH("-",A2))
Hasilnya akan kelihatan seperti ini:
Cara mengekstrak subrentetan selepas kejadian terakhir pembatas
Apabila berurusan dengan rentetan kompleks yang mengandungi beberapa kejadian bagi pembatas yang sama, anda mungkin sering perlu mendapatkan semula teks di sebelah kanan kejadian pembatas terakhir. Untuk menjadikan perkara lebih mudah difahami, lihat data sumber berikut dan hasil yang diingini:
Seperti yang anda lihat dalam tangkapan skrin di atas, Lajur A mengandungi senarai ralat. Matlamat anda adalah untuk menarik penerangan ralat yang datang selepas titik bertindih terakhir dalam setiap rentetan. Komplikasi tambahan ialah rentetan asal mungkin mengandungi bilangan contoh pembatas yang berbeza, mis. A3 mengandungi 3 titik bertindih manakala A5 hanya satu.
Kunci untuk mencari penyelesaian ialah menentukan kedudukan pembatas terakhir dalam rentetan sumber (kejadian terakhir titik bertindih dalam contoh ini). Untuk melakukan ini, anda perlu menggunakan beberapa fungsi yang berbeza:
- Dapatkan bilangan pembatas dalam rentetan asal. Ini bahagian yang mudah:
- Pertama, anda mengira jumlah panjang rentetan menggunakan fungsi LEN: LEN(A2)
- Kedua, anda mengira panjang rentetan tanpa pembatas dengan menggunakan Fungsi SUBSTITUTE yang menggantikan semua kemunculan titik bertindih dengan tiada apa-apa: LEN(SUBSTITUTE(A2,":",""))
- Akhir sekali, anda menolak panjang rentetan asaltanpa pembatas daripada jumlah panjang rentetan: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))
Untuk memastikan formula berfungsi dengan betul, anda boleh memasukkannya dalam sel berasingan, dan hasilnya ialah 2, iaitu bilangan titik bertindih dalam sel A2.
- Ganti pembatas terakhir dengan beberapa aksara unik. Untuk mengekstrak teks yang datang selepas pembatas terakhir dalam rentetan, kita perlu "menandai" kejadian terakhir pembatas itu dalam beberapa cara. Untuk ini, mari kita gantikan kejadian terakhir titik bertindih dengan aksara yang tidak muncul di mana-mana dalam rentetan asal, contohnya dengan tanda paun (#).
Jika anda biasa dengan sintaks fungsi SUBSTITUTE Excel, anda mungkin ingat bahawa ia mempunyai hujah pilihan ke-4 (instance_num) yang membenarkan menggantikan hanya kejadian tertentu bagi aksara yang ditentukan. Dan oleh kerana kita telah mengira bilangan pembatas dalam rentetan, cukup berikan fungsi di atas dalam argumen keempat bagi fungsi GANTI yang lain:
=SUBSTITUTE(A2,":","#",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))
Jika anda meletakkan formula ini dalam sel yang berasingan , ia akan mengembalikan rentetan ini: ERROR:432#Connection timed out
- Dapatkan kedudukan pembatas terakhir dalam rentetan. Bergantung pada aksara yang anda gantikan dengan pembatas terakhir, gunakan sama ada SEARCH yang tidak peka huruf besar atau huruf CARI sensitif untuk menentukan kedudukan aksara tersebut dalam rentetan. Kami menggantikan kolon terakhirdengan tanda #, jadi kami menggunakan formula berikut untuk mengetahui kedudukannya:
=SEARCH("#", SUBSTITUTE(A2,":","#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))
Dalam contoh ini, formula mengembalikan 10, iaitu kedudukan # dalam rentetan yang diganti.
- Kembalikan subrentetan di sebelah kanan pembatas terakhir. Sekarang setelah anda mengetahui kedudukan pembatas terakhir dalam rentetan, anda hanya perlu menolak nombor itu daripada jumlah panjang rentetan dan dapatkan fungsi RIGHT untuk mengembalikan banyak aksara itu daripada penghujung rentetan asal:
=RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))
Seperti yang ditunjukkan dalam tangkapan skrin di bawah, formula berfungsi dengan sempurna:
Jika anda bekerja dengan set data yang besar di mana sel yang berbeza mungkin mengandungi pembatas yang berbeza, anda mungkin mahu untuk menyertakan formula di atas dalam fungsi IFERROR untuk mengelakkan ralat yang mungkin berlaku:
=IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))), A2)
Sekiranya rentetan tertentu tidak mengandungi satu kejadian bagi pembatas yang ditentukan, rentetan asal akan dikembalikan, seperti dalam baris 6 dalam tangkapan skrin di bawah:
Cara mengalih keluar N aksara pertama daripada rentetan
Selain daripada mengekstrak subrentetan daripada hujung rentetan, fungsi Excel RIGHT amat berguna dalam situasi apabila anda ingin mengalih keluar bilangan aksara tertentu dari permulaan rentetan.
Dalam set data yang digunakan dalam sebelumnya Sebagai contoh, anda mungkin mahu mengalih keluar perkataan "ERROR" yang muncul pada permulaan setiap rentetan dan hanya meninggalkan nombor ralat dan perihalan. Untuk memilikinyaselesai, tolak bilangan aksara yang akan dialih keluar daripada jumlah panjang rentetan dan berikan nombor itu kepada argumen num_chars bagi fungsi Excel RIGHT:
RIGHT( rentetan , LEN ( rentetan )- number_of_chars_to_remove )Dalam contoh ini, kami mengalih keluar 6 aksara pertama (5 huruf dan bertindih) daripada rentetan teks dalam A2, jadi formula kami berjalan seperti berikut:
=RIGHT(A2, LEN(A2)-6)
Bolehkah fungsi Excel RIGHT mengembalikan nombor?
Seperti yang dinyatakan dalam permulaan tutorial ini, fungsi RIGHT dalam Excel sentiasa mengembalikan rentetan teks walaupun jika nilai asal ialah nombor. Tetapi bagaimana jika anda bekerja dengan set data berangka dan mahu outputnya juga berangka? Penyelesaian mudah ialah menyusun formula Betul dalam fungsi VALUE, yang direka khas untuk menukar rentetan yang mewakili nombor kepada nombor.
Sebagai contoh, untuk menarik 5 aksara terakhir (kod pos) daripada rentetan dalam A2 dan tukar aksara yang diekstrak kepada nombor, gunakan formula ini:
=VALUE(RIGHT(A2, 5))
Tangkapan skrin di bawah menunjukkan hasilnya - sila perhatikan nombor penjajaran kanan dalam lajur B, berbanding dengan kiri -rentetan teks sejajar dalam lajur A:
Mengapa fungsi RIGHT tidak berfungsi dengan tarikh?
Memandangkan fungsi Excel RIGHT direka bentuk untuk berfungsi dengan rentetan teks manakala tarikh diwakili oleh nombor dalam sistem Excel dalaman, formula Right tidak dapat mengambil semula individusebahagian daripada tarikh seperti hari, bulan atau tahun. Jika anda cuba melakukan ini, semua yang anda akan dapat ialah beberapa digit terakhir nombor yang mewakili tarikh.
Andaikata, anda mempunyai tarikh 18-Jan-2017 dalam sel A1. Jika anda cuba mengekstrak tahun dengan formula RIGHT(A1,4), hasilnya ialah 2753, iaitu 4 digit terakhir nombor 42753 yang mewakili 18 Januari 2017 dalam sistem Excel.
"Jadi, bagaimana saya boleh mendapatkan bahagian tertentu tarikh?", anda mungkin bertanya kepada saya. Dengan menggunakan salah satu fungsi berikut:
- Fungsi HARI untuk mengekstrak hari: =DAY(A1)
- Fungsi BULAN untuk mendapatkan sebulan: =MONTH(A1)
- Fungsi YEAR untuk menarik setahun: =YEAR(A1)
Tangkapan skrin berikut menunjukkan keputusan:
Jika tarikh anda diwakili oleh rentetan teks , yang selalunya berlaku apabila anda mengeksport data daripada sumber luaran, tiada apa yang menghalang anda daripada menggunakan fungsi RIGHT untuk menarik beberapa aksara terakhir dalam rentetan yang mewakili bahagian tertentu tarikh:
Excel RIGHT fungsi tidak berfungsi - sebab dan penyelesaian
Jika formula Betul tidak berfungsi dengan betul dalam lembaran kerja anda, kemungkinan besar ia disebabkan oleh salah satu sebab berikut:
- Terdapat satu atau lebih ruang belakang dalam data asal. Untuk mengalih keluar ruang tambahan dengan cepat dalam sel, gunakan sama ada fungsi Excel TRIM atau tambahan Cell Cleaner.
- Argumen num_chars ialah kurang daripada sifar . DaripadaSudah tentu, anda tidak akan mahu meletakkan nombor negatif dalam formula anda dengan sengaja, tetapi jika argumen num_chars dikira oleh fungsi Excel lain atau gabungan fungsi yang berbeza dan formula Right anda mengembalikan #VALUE! ralat, pastikan anda menyemak fungsi bersarang untuk mengesan ralat.
- Nilai asal ialah tarikh . Jika anda telah mengikuti tutorial ini dengan teliti, anda sudah tahu mengapa fungsi RIGHT tidak boleh berfungsi dengan tarikh. Jika seseorang melangkau bahagian sebelumnya, anda boleh mendapatkan butiran penuh dalam Mengapa fungsi Excel RIGHT tidak berfungsi dengan tarikh.
Ini adalah cara anda menggunakan fungsi RIGHT dalam Excel. Untuk melihat dengan lebih dekat formula yang dibincangkan dalam tutorial ini, anda dialu-alukan untuk memuat turun contoh buku kerja kami di bawah. Saya berterima kasih kerana membaca dan berharap dapat berjumpa anda di blog kami minggu hadapan.
Muat turun yang tersedia
Fungsi Excel RIGHT - contoh (fail.xlsx)