Rumus LEFT, RIGHT, MID Excel: Ambil Potongan Teks dengan Presisi
TL;DR
Rumus LEFT, RIGHT, dan MID Excel mengambil potongan teks dari sebuah sel: LEFT dari sisi kiri, RIGHT dari sisi kanan, dan MID dari posisi tertentu di tengah. Sintaksnya =LEFT(teks; jumlah_karakter), =RIGHT(teks; jumlah_karakter), dan =MID(teks; posisi_awal; jumlah_karakter). Buat teks yang panjangnya beda-beda, gabungkan dengan FIND atau SEARCH biar posisi potongnya dihitung otomatis.
LEFT ngambil karakter dari kiri, RIGHT dari kanan, MID dari tengah. Tiga fungsi ini yang kamu pakai tiap kali harus mecah satu kolom teks jadi beberapa bagian.
Kode invoice INV-2026-0451 yang harus dipecah jadi prefix, tahun, dan nomor urut? Ini rumusnya.
Aku bahas sintaks ketiganya, cara pecah kode berformat tetap, trik buat teks yang panjangnya beda-beda, dan kenapa hasilnya gak bisa langsung dijumlah.
Apa sintaks LEFT, RIGHT, dan MID?
| Fungsi | Sintaks | Ambil dari |
|---|---|---|
| LEFT | =LEFT(teks; jumlah_karakter) | Sisi kiri |
| RIGHT | =RIGHT(teks; jumlah_karakter) | Sisi kanan |
| MID | =MID(teks; posisi_awal; jumlah_karakter) | Posisi mana pun |
LEFT dan RIGHT cuma butuh dua argumen. MID butuh tiga, karena dia perlu tau mulai dari mana.
=LEFT("INV-2026-0451"; 3) → INV
=RIGHT("INV-2026-0451"; 4) → 0451
=MID("INV-2026-0451"; 5; 4) → 2026
Perhatiin argumen MID: mulai dari karakter ke-5, ambil 4 karakter. Karakter pertama itu posisi 1, bukan 0.
Contoh kasus: pecah kode invoice toko_berkah
Toko_berkah pakai format kode invoice INV-2026-JKT-0451. Empat bagian: prefix, tahun, kode kota, nomor urut.
Tim finance butuh kolom terpisah buat bikin pivot per kota dan per tahun.
A2 = INV-2026-JKT-0451
B2: =LEFT(A2; 3) → INV
C2: =MID(A2; 5; 4) → 2026
D2: =MID(A2; 10; 3) → JKT
E2: =RIGHT(A2; 4) → 0451
Cara ngitung posisinya: hitung karakternya satu-satu dari kiri.
I N V - 2 0 2 6 - J K T - 0 4 5 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Tahun mulai di posisi 5, panjangnya 4. Kode kota mulai di posisi 10, panjangnya 3.
Tarik rumusnya ke bawah, dan 3.400 baris invoice kepecah dalam sekali klik. Dari data ngulikdata, tim finance toko_berkah dulu ngerjain ini pakai Text to Columns tiap bulan — sekitar 20 menit, dan harus diulang tiap ada file baru. Rumus di kolom bantu bikin itu otomatis selamanya.
Gimana kalau panjang teksnya beda-beda?
Ini kelemahan LEFT, RIGHT, dan MID kalau dipakai sendirian: mereka butuh angka posisi yang pasti.
Nama pelanggan panjangnya beda-beda. "Budi Santoso" 12 karakter, "Dewi Ayu Lestari" 16. =LEFT(A2; 4) ngasih "Budi" buat baris pertama, tapi "Dewi" doang buat baris kedua — padahal nama depannya emang "Dewi", jadi kebetulan bener. Kalau namanya "Muhammad Rizky"? LEFT(A2;4) ngasih "Muha". Berantakan.
Solusinya: gabungin sama FIND, yang nyari posisi spasi.
-- Nama depan
=LEFT(A2; FIND(" "; A2) - 1)
"Muhammad Rizky" → Muhammad
-- Nama belakang
=MID(A2; FIND(" "; A2) + 1; 100)
"Muhammad Rizky" → Rizky
Cara kerjanya: FIND(" "; A2) ngasih posisi spasi pertama. Buat "Muhammad Rizky", spasinya di posisi 9. Kurangi 1 jadi 8, dan LEFT ngambil 8 karakter pertama.
Buat nama belakang, mulai dari posisi 10 (spasi + 1), ambil 100 karakter. Angka 100 itu sekadar angka besar — MID gak error kalau kamu minta lebih banyak karakter dari yang tersedia, dia cuma ngasih sisanya.
Detail cara kerja fungsi FIND ada di halaman fungsinya.
Kalau ada nama tengah?
"Dewi Ayu Lestari" punya dua spasi. FIND cuma nemuin yang pertama.
Buat ngambil kata terakhir apa pun jumlah spasinya, pakai kombinasi ini:
=TRIM(RIGHT(SUBSTITUTE(A2; " "; REPT(" "; 100)); 100))
"Dewi Ayu Lestari" → Lestari
Trik lama tapi tetap jalan. SUBSTITUTE ganti tiap spasi jadi 100 spasi, RIGHT ngambil 100 karakter terakhir (yang pasti cuma berisi kata terakhir plus banyak spasi), dan TRIM ngebuang spasinya.
Kalau Excel kamu versi 365, ada cara yang jauh lebih enak dibaca: =TEXTAFTER(A2; " "; -1).
Kesalahan umum
1. Hasilnya teks, bukan angka
Ini yang paling sering bikin bingung.
=MID(A2; 5; 4) → "2026" (teks)
=SUM(C2:C100) → 0
LEFT, RIGHT, dan MID selalu ngasih teks, bahkan kalau isinya angka semua. Excel biasanya nampilin teks rata kiri dan angka rata kanan — kalau hasil rumus kamu rata kiri, itu teks.
Bungkus pakai VALUE:
=VALUE(MID(A2; 5; 4)) → 2026 (angka)
=MID(A2; 5; 4) * 1 → 2026 (angka, cara pintas)
2. Nol di depan hilang
=VALUE(RIGHT(A2; 4)) buat nomor urut "0451" ngasih 451. Nol di depannya ilang, karena angka 0451 sama dengan 451.
Kalau nomor urutnya harus tetap 4 digit, jangan konversi ke angka. Biarin sebagai teks, atau format ulang pakai =TEXT(VALUE(RIGHT(A2;4)); "0000").
3. Salah hitung posisi karena spasi
Kode "INV -2026" dengan spasi nyempil bikin semua posisi geser satu. Bersihin dulu pakai TRIM sebelum motong, terutama kalau datanya hasil copy dari PDF atau web.
4. Pakai MID buat ngambil dari ujung
=MID(A2; LEN(A2)-3; 4) jalan buat ngambil 4 karakter terakhir. Tapi =RIGHT(A2; 4) ngerjain hal yang sama dengan setengah panjang rumus. Pakai alat yang tepat.
Kapan pakai Text to Columns aja?
Kalau kamu cuma perlu mecah data sekali dan gak bakal update lagi, menu Data > Text to Columns lebih cepat. Klik-klik, selesai.
Rumus menang kalau datanya bakal terus nambah. Rumus ikut ke bawah otomatis; Text to Columns harus diulang tiap ada baris baru.
Referensi resmi buat ketiga fungsi ini ada di halaman fungsi LEFT Microsoft, lengkap dengan catatan tentang versi byte-nya (LEFTB, MIDB) buat bahasa dua-byte.
FAQ
Apa bedanya LEFT, RIGHT, dan MID?
LEFT dari kiri, RIGHT dari kanan, MID dari posisi mana pun di tengah. LEFT dan RIGHT butuh dua argumen, MID butuh tiga. Kalau potongannya nempel di ujung, pakai LEFT atau RIGHT karena lebih pendek.
Kenapa hasil LEFT dan MID gak bisa dijumlah?
Ketiganya selalu ngasih teks, bahkan kalau isinya angka. SUM ke kolom itu ngasih 0. Bungkus pakai VALUE, atau kali satu: =LEFT(A2;4)*1.
Gimana kalau panjang teksnya beda-beda?
Jangan hardcode posisinya. Gabungin sama FIND: =LEFT(A2;FIND(" ";A2)-1) buat nama depan. FIND ngasih posisi spasi, dikurangi 1 biar spasinya gak ikut keambil.
Apakah MID bisa ambil karakter terakhir?
Bisa, tapi RIGHT lebih pas. MID butuh LEN buat ngitung posisi awalnya. RIGHT langsung: =RIGHT(A2;4). Pakai MID buat ini cuma manjangin rumus tanpa untung.
Penutup
Kalau posisinya tetap, LEFT/RIGHT/MID cukup sendirian. Kalau panjangnya beda-beda, gabungin sama FIND biar posisinya dihitung otomatis.
Dan selalu inget: hasilnya teks. Bungkus pakai VALUE kalau mau dijumlah.
Buka file kamu, cari kolom kode atau nama yang selama ini kamu pecah manual, dan tulis satu rumus. Kalau formatnya konsisten, lima menit selesai.
Lanjut ke rumus LEN Excel buat validasi panjang hasil potongannya, atau rumus CONCATENATE kalau kamu perlu nyambungin balik.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel Terkait
Template Laporan Penjualan Excel: Struktur yang Dipakai Analis
Template laporan penjualan yang bener cuma butuh 3 sheet. Yang bikin laporan orang rusak biasanya karena data mentah dan hasil dicampur di satu tempat.
Cara Menghubungkan Google Sheets ke Looker Studio
Nyambungin Google Sheets ke Looker Studio cuma butuh 5 menit. Yang bikin lama itu datanya belum rapi. Ini urutan yang bener.
Cara Share Google Sheets dengan Aman: Permission & Protected Range
Panduan step by step share Google Sheets tanpa bikin rumus kehapus atau data gaji bocor — dari level permission, protected range, sampai audit siapa yang buka.