Excel'de Metin ve Karakter Arama: BUL ile ARA Karşılaştırması

Kerem Aydın·12 Temmuz 2026·⏱5 dk

Excel'de bir hücre içindeki metnin veya karakterin konumunu bulmak için BUL (büyük/küçük harfe duyarlı kesin arama için) veya ARA (büyük/küçük harften bağımsız esnek arama için) işlevini kullanın. Her iki işlev de bulunan ilk karakterin konum numarasını döndürür; bu sonuç, verilerin daha sonra çıkarılması veya değiştirilmesi için kullanılabilir.

Kısa cevap: Kelimenin büyük veya küçük harfle yazılmasından bağımsız olarak sadece kelimeyi bulmanız gerekiyorsa =ARA("metin"; A1) kullanın. Kesin büyük/küçük harf eşleşmesi önemliyse (örneğin, "Mayıs" ile "mayıs"ı ayırt etmek için) =BUL("metin"; A1) kullanın.

İşlevler arasındaki temel fark nedir

Benzer sözdizimine rağmen, bu iki işlev kritik durumlarda farklı davranır. Bu farkları anlamak, formül hata ayıklama sürecinde size saatler kazandıracaktır.

  1. Büyük/küçük harf duyarlılığı.

    • BUL (FIND): Büyük ve küçük harfleri ayırt eder. "A" ve "a" araması farklı sonuçlar veya hata verecektir.
    • ARA (SEARCH): Büyük/küçük harfi yoksayar. Onun için "A" ve "a" aynı karakterdir.
  2. Desteklenen karakterler.

    • BUL: Yalnızca belirli metinle çalışır. * (yıldız) ve ? (soru işareti) karakterleri değişmez olarak aranır.
    • ARA: Joker karakterleri destekler. * herhangi bir karakter dizisini, ? ise herhangi bir tek karakteri temsil eder.

İşlev aranan metni bulamazsa, #YOK! (#VALUE!) hatası döndürür. Bu, karmaşık hesaplama zincirlerinde bozulmaların sık görülen bir nedenidir. Her zaman bu hatayı yönetmeyi planlayın.

Sözdizimi ve Bağımsız Değişkenler

Her iki işlev de aynı bağımsız değişken yapısına sahiptir:

=BUL(aranan_değer; içinde_aranan_metin; [başlangıç_konumu])
=ARA(aranan_değer; içinde_aranan_metin; [başlangıç_konumu])
  • aranan_değer (zorunlu): Aranan değeri içeren metin, karakter veya hücre referansı.
  • içinde_aranan_metin (zorunlu): Aramanın yapılacağı hücre veya metin dizesi.
  • başlangıç_konumu (isteğe bağlı): Aramaya başlanacak karakter numarası. Varsayılan olarak 1'dir (dizenin başı). 5 belirtirseniz, arama beşinci karakterden başlar ve ilk dört karakteri yoksayar.

Kullanım Örnekleri

Anlayışı pekiştirmek için gerçek senaryoları inceleyelim.

Örnek 1: Büyük/Küçük Harf Duyarlılığı

A1 hücresinde şu metin olduğunu varsayalım: Merhaba, Dünya.

  • =BUL("dünya"; A1) formülü #YOK! döndürür, çünkü metindeki "Dünya" büyük harfle başlarken biz küçük harfle arıyoruz.
  • =ARA("dünya"; A1) formülü 10 döndürür ve büyük/küçük harften bağımsız olarak kelimeyi başarıyla bulur.

Örnek 2: Joker Karakterlerin Kullanımı

B1 hücresinde bir ürün kodu kayıtlı: Urun-AB-123. İki harf takip eden herhangi bir tirenin konumunu bulmamız gerekiyor.

  • =ARA("-??"; B1) formülü, ardından iki herhangi bir karakter gelen ilk tirenin konumunu bulacaktır.
  • BUL işlevi soru işaretlerini şablon olarak işleyemez ve değişmez ? karakterini arayacaktır.

Örnek 3: İkinci Geçişin Bulunması

Bazen kelimenin ilk değil, ikinci geçtiği yeri bulmanız gerekebilir. Bunun için başlangıç_konumu bağımsız değişkeni kullanılır.

C1 hücresinde şu metin olduğunu varsayalım: satış departmanı, satın alma departmanı, lojistik departmanı. "departman" kelimesinin ikinci kez başladığı yeri bulmamız gerekiyor.

  1. Önce ilk "departman"ı buluyoruz: =ARA("departman"; C1) → sonuç 1.
  2. İlk bulmadan sonraki konumdan başlayarak tekrar arama yapıyoruz: =ARA("departman"; C1; ARA("departman"; C1) + 1) Bu formül ilk geçişi atlayacak ve ikincisinin konumunu döndürecektir.

Diğer İşlevlerle Birleştirme

Sayısal konum tek başına çok kullanışlı değildir. Genellikle BUL/ARA işlevlerinin sonucu, metin çıkarma işlevleri olan SOLDAN, PARÇAAL veya SAĞDAN için bağımsız değişken olarak kullanılır.

Ayırıcıdan Önceki Metni Çıkarma

Sık karşılaşılan bir görev: e-postadan kullanıcı adını almak (@ işaretinden önceki tüm karakterler).

Formül:

=SOLDAN(A2; ARA("@"; A2) - 1)

Mantık: ARA, @ konumunu bulur, sembolün kendisini dahil etmemek için 1 çıkarırız ve SOLDAN bu konumun solundaki her şeyi alır.

Parantez İçindeki Metni Çıkarma

Görev: (parantez) içindeki metni çıkarmak.

Formül:

=PARÇAAL(A2; ARA("("; A2) + 1; ARA(")"; A2) - ARA("("; A2) - 1)

Burada başlangıç konumunu (açık parantezden sonra) ve çıkarılacak parçanın uzunluğunu (parantezler arasındaki mesafe eksi 1) hesaplıyoruz.

Formül güvenliği için ipucu: Aranan metin eksik olabileceğinde, aramayı her zaman EĞERHATA işlevi içine alın. =BUL("kod"; A1) yerine şunu kullanın: =EĞERHATA(BUL("kod"; A1); 0) Bu, korkutucu #YOK! hatasını, filtrelemesi veya koşullarda kullanması kolay olan anlaşılır bir sıfıra dönüştürür.

İşlevlerin Karşılaştırmalı Tablosu

ÖzellikBUL İşlevi (FIND)ARA İşlevi (SEARCH)
Büyük/Küçük HarfDikkate alır (A ≠ a)Dikkate almaz (A = a)
Özel KarakterlerDeğişmez olarak arar (* ve ?)Şablonları destekler (* ve ?)
DilTüm karakterlerle çalışırYerel ayarlara bağlıdır (bazı sürümlerde çift bayt karakterlerde nüanslar olabilir)
Ne Zaman KullanılırKodların, şifrelerin, kesin tanımlayıcıların ayrıştırılmasıAnahtar kelimelerin aranması, verilerin temizlenmesi, kullanıcı girdisiyle çalışma

Arama İşlemlerinde Sık Yapılan Hatalar

  1. #YOK! (#VALUE!) Hatası Metin bulunamadığında ortaya çıkar. Çözüm: EĞERHATA(formül; "Bulunamadı") yapısını kullanın.

  2. Boşluklardan Kaynaklanan Yanlış Sonuç Verilerde genellikle başta veya sonda fazla boşluk olur (" metin "). Arama işlevi eşleşmeyi bulamayabilir veya kırpma için yanlış konum döndürebilir. Çözüm: Kaynak hücreyi KIRP (TRIM) işlevi içine alın. Örnek: =ARA("kelime"; KIRP(A1)).

  3. Sayı İçinde Rakam Arama Hücrede sayısal format (12345) saklanıyorsa ve "2" metnini arıyorsanız, işlevler doğru çalışır çünkü Excel arama için sayıyı otomatik olarak metne dönüştürür. Ancak sayının bir parçasını aramak (örneğin 12345 içinde "23"ü bulmak) 2. konumu döndürür. Sonuçla matematiksel işlem yaparken dikkatli olun.

SSS

Tüm metin geçişlerini aynı anda bulabilir miyim? Hayır, BUL ve ARA işlevleri yalnızca bulunan ilk öğenin (veya belirtilen başlangıç konumundan sonraki ilk öğenin) konumunu döndürür. Hepsini bulmak için döngüsel başvurular kullanmanız (önerilmez) veya VBA makroları yazmanız / diğer işlevlerle birlikte yeni dinamik dizileri kullanmanız gerekir.

Metni dizenin sonundan aramak gerekirse ne yapmalıyım? Standart işlevler yalnızca soldan sağa arama yapar. Sağdan sola arama yapmak için bir hile kullanabilirsiniz: işlev kombinasyonlarıyla dizeyi ters çevirmek (bu zordur) veya YERINEKOY ile akıllı bir formül aracılığıyla bulunan son geçişin konumunu çıkarmak. Son noktanın aranması örneği: =ARA("@@@", YERINEKOY(A1; "."; "@"; UZUNLUK(A1)-UZUNLUK(YERINEKOY(A1; "."; ""))))

Bu işlevler Google E-Tablolar'da çalışıyor mu? Evet, sözdizimi tamamen aynıdır. İşlevler aynı adı taşır: FIND ve SEARCH (veya Türkçe yerel ayarlarda BUL ve ARA).