BUL Formülü (FIND): Bir Karakterin Konumunu Bulma
BUL
İngilizce adı: FIND
Yayın: · Son güncelleme:
BUL kısaca
BUL, bir metnin başka bir metin içinde kaçıncı karakterden başladığını verir. Büyük/küçük harfe duyarlıdır ve joker karakter kabul etmez. Ayıraç konumunu bulup SOLDAN, SAĞDAN ve PARÇAAL'a vermek için kullanılır; bulamazsa #DEĞER! döner.
Söz dizimi
BUL(bul_metin; metin_içinde; [başlangıç_sayısı])FIND(find_text, within_text, [start_num])Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.
Argümanlar
| Argüman | Durum | Açıklama |
|---|---|---|
bul_metinfind_text | Zorunlu | Aranacak metin ya da karakter. |
metin_içindewithin_text | Zorunlu | Aramanın yapılacağı metin ya da hücre. |
başlangıç_sayısıstart_num | İsteğe bağlı | Aramanın başlayacağı karakter konumu. Yazılmazsa 1 kabul edilir. |
İçindekiler
BUL ne döndürür?
Excel BUL formülü, aradığınız metnin ilk geçtiği yerin karakter sırasını verir. "ELK-2041" kodunda tire 4. karakterdir ve =BUL("-";A2) 4 döndürür. Sonuç tek başına çok şey anlatmaz. Asıl değeri, SOLDAN, SAĞDAN ve PARÇAAL'a kaç karakter alacaklarını söylemesidir.
Aranan metin birden fazla karakter olabilir. Bu durumda ilk karakterinin konumu döner.
Argümanlar
bul_metin aradığınız ifade, metin_içinde aramanın yapılacağı metindir. Üçüncü argüman başlangıç_sayısı isteğe bağlıdır ve aramanın kaçıncı karakterden başlayacağını belirler. Yazmazsanız arama baştan yapılır.
Başlangıç noktası verildiğinde bile sonuç metnin başından sayılır. "TR-2026-0457" içinde =BUL("-";A2;5) ikinci tireyi bulur ve 8 döndürür, 4 değil.
Büyük/küçük harf duyarlılığı
BUL büyük ve küçük harfleri farklı kabul eder. "Kalem kutusu" metninde =BUL("k";A2) baştaki büyük K'yi atlar ve küçük k'nin konumu olan 7'yi verir. Aynı aramayı MBUL ile yapsaydınız sonuç 1 olurdu.
Bu duyarlılık, kod içinde harf farkının anlamlı olduğu durumlarda işe yarar. Harf farkını gözetmeyen bir arama istiyorsanız MBUL'u seçin; MBUL ayrıca ? ve * joker karakterlerini de kabul eder, BUL ise etmez.
Bir ifadenin ikinci tekrarını bulmak için ilk tekrarın konumunu başlangıç olarak verirsiniz. =BUL("-";A2;BUL("-";A2)+1) ilk tireden bir sonraki karakterden aramaya başlar ve ikinci tirenin yerini döndürür. Bu kalıp, iki ayıraç arasındaki parçayı PARÇAAL ile almak için gereken iki konumu da verir.
Bulunamayan değerler
Aranan metin yoksa BUL #DEĞER! hatası döndürür. Listede ayıracı olmayan satırlar varsa bu hata bütün sütuna yayılabilir. Formülü =EĞERHATA(BUL("/";A2);0) biçiminde yazarsanız bulunamayan durumda 0 alırsınız.
Bir hücrede bir ifadenin geçip geçmediğini sorgulamak için sonucu ESAYIYSA ile kontrol etmek de yaygındır. =ESAYIYSA(BUL("TR";A2)) ifade varsa DOĞRU, yoksa YANLIŞ verir.
Formül neden çalışmıyor?
En sık sorun, büyük/küçük harf farkı yüzünden beklenen yerin bulunmamasıdır. Kullanıcı "kdv" arar, hücrede "KDV" yazar ve #DEĞER! alır. Harf farkı önemli değilse MBUL kullanın.
İkinci hata, konum ile uzunluğu karıştırmaktır. Tireden önceki kısmı almak için SOLDAN(A2;BUL("-";A2)) yazarsanız tireyi de alırsınız; doğrusu BUL("-";A2)-1 yazmaktır.
BUL bir değer döndürdüğü için koşul olarak da kullanılabilir. Bir sipariş kodunun belirli bir konumda tire içerip içermediğini =BUL("-";A2)=4 ile kontrol ederseniz biçimi bozuk kodlar YANLIŞ ya da hata olarak öne çıkar. Bu küçük kontrol, büyük listelerde hatalı girişleri erkenden yakalamanızı sağlar.
Konumu bulduktan sonra
BUL'u çoğu zaman tek başına değil, metin kesen fonksiyonlarla birlikte kullanırsınız. Tireden sonrası için SAĞDAN(A2;UZUNLUK(A2)-BUL("-";A2)), ad soyaddan ad için SOLDAN(A2;BUL(" ";A2)-1) yaygın kalıplardır.
Şimdi tireli kodlardan oluşan bir sütunda =BUL("-";A2) ile tire konumunu bulun. Ardından bu sonucu SOLDAN içine yerleştirip ön eki ayıran formülü kurun.
Örnekler
| A | B | C | |
|---|---|---|---|
| 1 | Ürün kodu | ||
| 2 | ELK-2041 | 4 |
=BUL("-";A2)=FIND("-",A2)Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.
C2 hücresinin sonucu: 4
Tire, kodun 4. karakteridir.
| A | B | C | |
|---|---|---|---|
| 1 | Ürün | ||
| 2 | Kalem kutusu | 7 |
=BUL("k";A2)=FIND("k",A2)Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.
C2 hücresinin sonucu: 7
Baştaki büyük K eşleşmez; küçük k 7. karakterdedir.
| A | B | C | |
|---|---|---|---|
| 1 | Belge no | ||
| 2 | TR-2026-0457 | 8 |
=BUL("-";A2;5)=FIND("-",A2,5)Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.
C2 hücresinin sonucu: 8
Arama 5. karakterden başladığı için ilk tire atlanır, ikinci tire 8. sıradadır.
| A | B | C | |
|---|---|---|---|
| 1 | Ürün kodu | ||
| 2 | ELK-2041 | 0 |
=EĞERHATA(BUL("/";A2);0)=IFERROR(FIND("/",A2),0)Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.
C2 hücresinin sonucu: 0
Kodda bölü işareti olmadığı için BUL hata verir; EĞERHATA bunu 0'a çevirir.
Yaygın hatalar ve çözümleri
- #DEĞER!
Neden: Aranan metin bulunamadı, büyük/küçük harf uyuşmuyor ya da başlangıç_sayısı metnin uzunluğundan büyük.
Çözüm: Harf farkı önemsizse MBUL kullanın; bulunamayabilecek ifadeler için formülü EĞERHATA ile sarın.
#DEĞER! hatasının ayrıntılı çözümü →
İlgili fonksiyonlar
BUL kullanan rehberler ve alıştırmalar
Sıkça Sorulan Sorular
Excel BUL formülü nasıl kullanılır?
=BUL("-";A2) yazdığınızda tirenin A2'deki metinde kaçıncı karakter olduğu gelir. Sonucu genellikle SOLDAN ya da PARÇAAL içinde kullanırsınız.
BUL ile MBUL arasındaki fark nedir?
BUL büyük/küçük harfe duyarlıdır ve joker karakter kabul etmez. MBUL harf farkı gözetmez ve ? ile * joker karakterlerini kabul eder.
BUL neden #DEĞER! hatası veriyor?
Aranan metin bulunamamıştır ya da harf büyüklüğü uyuşmuyordur. Formülü EĞERHATA ile sarabilir ya da MBUL'a geçebilirsiniz.