Menu

Rumus FIND dan SEARCH di Excel: Mencari Posisi Teks di Sel

=SEARCH("apple",A2) menghasilkan posisi awal apple di A2, tanpa membedakan huruf besar kecil. FIND melakukan hal yang sama tetapi membedakan huruf besar kecil. Keduanya menghasilkan #VALUE! kalau teksnya tidak ada, dan ISNUMBER mengubahnya menjadi uji "jika sel berisi".

Setiap lembar kerja di halaman ini interaktif: ubah angka atau rumus, dan hasilnya langsung dihitung ulang.

=SEARCH("apple",A2) menghasilkan posisi awal apple di A2, dihitung dari 1, dan mengabaikan huruf besar kecil. =FIND("apple",A2) melakukan hal yang sama tetapi hanya cocok dengan huruf besar kecil yang persis. Kalau teksnya tidak ada, keduanya menghasilkan #VALUE!.

FIND membedakan huruf besar kecil, SEARCH tidak
B2
ABC
1TextFIND("apple")SEARCH("apple")
2Apple pie#VALUE!1
3Green apple77
4Banana bread#VALUE!#VALUE!
#VALUE! Ada argumen dengan tipe yang salah, misalnya teks di tempat yang seharusnya angka.

Apple pie diawali huruf A kapital, jadi FIND tidak menemukan kecocokan dan menghasilkan #VALUE!, sedangkan SEARCH menghasilkan 1. Di Green apple, keduanya menghasilkan 7: spasi juga dihitung sebagai karakter. Banana bread sama sekali tidak mengandung apple.

Sintaks

=FIND(find_text, within_text, [start_num])
=SEARCH(find_text, within_text, [start_num])
  • find_text: apa yang dicari. Satu karakter atau satu kata.
  • within_text: sel tempat mencarinya.
  • start_num: posisi awal pencarian, 1 kalau dihilangkan. Hasilnya tetap dihitung dari karakter pertama di sel.

Jika sel berisi teks

Posisinya sendiri jarang yang kamu butuhkan. Biasanya pertanyaannya adalah "apakah sel ini mengandung kata itu?". Posisi adalah angka dan kegagalan adalah error, jadi ISNUMBER mengubah hasilnya menjadi TRUE atau FALSE:

Apakah catatannya menyebut keterlambatan?
B2
ABC
1NoteContains "late"Status
2Arrived lateTRUECheck
3On timeFALSEOK
4LATE by 2 daysTRUECheck
5DeliveredFALSEOK
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

SEARCH cocok dengan LATE di A4 karena mengabaikan huruf besar kecil. Perhatikan bahwa SEARCH juga akan cocok dengan latest atau chocolate: SEARCH mencari karakter, bukan kata utuh. Mencari " late" dengan spasi di depannya sedikit mempersempit hasilnya. Untuk menghitung berapa sel yang mengandung sebuah kata, =COUNTIF(A2:A5,"*late*") lebih singkat; lihat menghitung sel berisi teks.

Tandai tiket yang mendesak
B2
AB
1SubjectUrgent?
2URGENT: server down
3Monthly report
4Refund request, urgent
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Giliranmu: Di B2, hasilkan TRUE kalau subjek di A2 mengandung kata urgent dengan huruf besar kecil apa pun, dan FALSE kalau tidak. Rumusnya disalin ke bawah sampai B4.

Mencari kemunculan kedua

start_num membuatmu bisa mulai mencari setelah kecocokan pertama. Taruh satu FIND di dalam FIND lainnya: yang di dalam menemukan tanda strip pertama, dan yang di luar mulai mencari satu karakter sesudahnya.

Posisi tanda strip pertama dan kedua
C2
ABC
1CodeFirst dashSecond dash
2NYC-2041-B49
3BOSTON-15-AA710
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Dengan kedua posisi itu, MID bisa mengambil isi di antara tanda strip: =MID(A2,B2+1,C2-B2-1) menghasilkan 2041.

Di mana tanda @?
B2
AB
1EmailPosition
2ana@coddy.tech
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Giliranmu: Di B2, hasilkan posisi @ di alamat email.

FIND dan SEARCH menghasilkan #VALUE!

#VALUE! di sini hanya berarti "tidak ditemukan". Ganti dengan sesuatu yang berguna:

Tidak ditemukan, tanpa error
B2
AB
1EmailPosition of @
2ana@coddy.tech4
3not an email0
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Jangan bandingkan hasil mentahnya dengan angka, seperti =FIND("@",A2)>0: kegagalan berupa error, jadi perbandingannya menghasilkan #VALUE!, bukan FALSE. Uji dengan ISNUMBER, seperti di bagian di atas.

SEARCH menerima wildcard ? (satu karakter apa pun) dan * (rangkaian karakter apa pun). FIND memperlakukannya sebagai karakter biasa. Di Excel:

=SEARCH("b?d","a bad day")     returns 3
=SEARCH("2*B","NYC-2041-B")    returns 5
=SEARCH("~?","Why?")           returns 4, the tilde means a real question mark
=FIND("?","Why?")              returns 4, FIND has no wildcards

Penjelasan lebih lanjut tentang *, ?, dan ~ di berbagai fungsi Excel ada di halaman wildcard.

FIND vs SEARCH vs Ctrl+F

FINDSEARCHCtrl+F
Huruf besar kecilHarus cocokDiabaikanDiabaikan, kecuali Match case dicentang
WildcardTidak?, *, ~?, *, ~
Tidak ditemukan#VALUE!#VALUE!Sebuah pesan
HasilPosisi, dihitung ulangPosisi, dihitung ulangMemilih selnya

Untuk mencari sebuah nilai satu kali, Home > Find & Select > Find (Ctrl+F, Cmd+F di Mac) lebih cepat daripada rumus. Untuk menandai atau mengambil teks di setiap baris dan menjaganya tetap diperbarui, pakai FIND atau SEARCH. Pilih FIND kalau huruf besar kecil punya arti (kode produk seperti ab dan AB), dan SEARCH untuk semua teks yang diketik orang.

Pertanyaan yang sering diajukan

Apa beda FIND dan SEARCH di Excel?

FIND membedakan huruf besar kecil dan tidak menerima wildcard. SEARCH mengabaikan huruf besar kecil dan menerima ? dan *. =FIND("a","Apple") menghasilkan #VALUE!, sedangkan =SEARCH("a","Apple") menghasilkan 1.

Bagaimana cara mengambil teks di antara dua tanda strip di Excel?

Cari kedua tanda stripnya lalu ambil isi di antaranya dengan MID: =MID(A2,FIND("-",A2)+1,FIND("-",A2,FIND("-",A2)+1)-FIND("-",A2)-1) menghasilkan 2041 dari NYC-2041-B. Di Microsoft 365, =TEXTBEFORE(TEXTAFTER(A2,"-"),"-") lebih singkat.

Kenapa FIND menghasilkan #VALUE!?

Teksnya tidak ada di sel itu, atau ada tetapi dengan huruf besar kecil yang berbeda (FIND membedakan huruf besar kecil). Bungkus rumusnya untuk menghasilkan hal lain: =IFERROR(FIND("-",A2),0).

Bagaimana cara mencari kemunculan kedua sebuah karakter?

Mulai pencarian satu karakter setelah kecocokan pertama: =FIND("-",A2,FIND("-",A2)+1). Argumen ketiganya adalah posisi awal pencarian.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai