Excel'de Belirli Bir Karakterden Sonrasını Alma ve Silme
Yayın: · Son güncelleme:
Kısaca
Excel'de belirli bir karakterden sonrasını almak için =PARÇAAL(A2;BUL("@";A2)+1;UZUNLUK(A2)), öncesini almak için =SOLDAN(A2;BUL("@";A2)-1) yazılır. Microsoft 365 ve Excel 2024'te SONRAKİMETİN aynı işi tek fonksiyonla yapar.
Adım adım
- 1
Karakterin yerini bulun
=BUL("@";A2) ile aranan karakterin kaçıncı sırada olduğunu görün.
- 2
Sonrasını alın
=PARÇAAL(A2;BUL("@";A2)+1;UZUNLUK(A2)) formülünü yazın.
- 3
Gerekirse öncesini alın
Sonrasını silmek için =SOLDAN(A2;BUL("@";A2)-1) kullanın.
- 4
Tekrar eden karakteri hedefleyin
İkinci tire için BUL'u YERİNEKOY(A2;"-";"#";2) ile birlikte kullanın.
- 5
Hataları yönetin
Karakter bulunmayan satırlar için formülü EĞERHATA ile sarmalayın.
- 6
Sonuçları sabitleyin
Formüllü sütunu kopyalayıp Değerleri Yapıştır ile sabitleyin.
İçindekiler
- Bir karakterden sonraki metin nasıl alınır?
- Karakterden öncesini almak ya da sonrasını silmek
- Karakter birden fazla kez geçiyorsa
- Son noktadan sonrasını almak: dosya uzantısı
- BUL ile MBUL arasındaki fark
- Karakter yoksa ne olur?
- İki karakter arasındaki metni almak
- Microsoft 365'te SONRAKİMETİN
- Formülsüz yol: Bul ve Değiştir
- Sıradaki adım
Bir karakterden sonraki metin nasıl alınır?
Belirli bir karakterden sonrasını almak için önce o karakterin yerini BUL ile bulursunuz. PARÇAAL da bu konumun bir sonrasından başlayarak metni keser. "selin.kaya@ornek.com" adresinde @ 11. karakterdir; 12. karakterden başlayan kısım alan adını verir.
| A | B | C | |
|---|---|---|---|
| 1 | Veri | ||
| 2 | selin.kaya@ornek.com | ornek.com | |
| 3 | TR-34-0815 |
=PARÇAAL(A2;BUL("@";A2)+1;UZUNLUK(A2))=MID(A2,FIND("@",A2)+1,LEN(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: ornek.com
@ 11. karakterdir; 12. karakterden sonuna kadar olan kısım alınır.
PARÇAAL'ın üçüncü argümanı kaç karakter alınacağını söyler. Buraya metnin toplam uzunluğunu yazmak, kalan kısmın tamamını almanın pratik bir yoludur. Kalan karakter sayısı bundan az olsa da Excel hata vermez, metnin sonuna kadar olanı döndürür.
Karakterden öncesini almak ya da sonrasını silmek
"Belirli bir karakterden sonrasını silmek" aslında öncesini almak demektir. SOLDAN, @ işaretinin bir öncesine kadar olan kısmı alır ve geri kalanını sonuçtan atar.
| A | B | C | |
|---|---|---|---|
| 1 | Veri | ||
| 2 | selin.kaya@ornek.com | selin.kaya | |
| 3 | TR-34-0815 |
=SOLDAN(A2;BUL("@";A2)-1)=LEFT(A2,FIND("@",A2)-1)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: selin.kaya
@ işaretinden önceki 10 karakter alınır; @ ve sonrası sonuca girmez.
Aynı formül ürün kodlarında, dosya adlarında ve adreslerde de çalışır. "Defter-A4-Kareli" gibi bir değerde ilk tireden öncesini almak için yalnız aranan karakteri değiştirirsiniz: =SOLDAN(A2;BUL("-";A2)-1) sonucu "Defter" olur.
Karakter birden fazla kez geçiyorsa
"TR-34-0815" gibi bir kodda tire iki kez geçer. BUL her zaman ilk tireyi bulduğu için yukarıdaki formül "34-0815" döndürür. İkinci tireden sonrasını almak için YERİNEKOY ile yalnız ikinci tireyi metinde geçmeyen bir işaretle değiştirirsiniz.
| A | B | C | |
|---|---|---|---|
| 1 | Veri | ||
| 2 | selin.kaya@ornek.com | 0815 | |
| 3 | TR-34-0815 |
=PARÇAAL(A3;BUL("#";YERİNEKOY(A3;"-";"#";2))+1;UZUNLUK(A3))=MID(A3,FIND("#",SUBSTITUTE(A3,"-","#",2))+1,LEN(A3))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: 0815
Yalnız ikinci tire # ile değiştirilir. # 6. karakterdir; 7. karakterden sonrası 0815'tir.
YERİNEKOY'un dördüncü argümanı kaçıncı tekrarın değişeceğini belirler. 2 yazdığınızda yalnız ikinci tire # olur, BUL da bu işaretin yerini verir. Tire sayısı satırdan satıra değişiyorsa son tireyi bulmak için tekrar sayısını UZUNLUK(A2)-UZUNLUK(YERİNEKOY(A2;"-";"")) ile hesaplayıp aynı yere yazabilirsiniz.
Son noktadan sonrasını almak: dosya uzantısı
Dosya adlarında uzantıyı ayırmak bu yöntemin tipik bir kullanımıdır. "rapor.ekim.2026.xlsx" adında dört nokta vardır ve uzantı son noktadan sonra gelir. Nokta sayısını hesaplayıp son noktayı # ile işaretlersiniz:
=PARÇAAL(A2;BUL("#";YERİNEKOY(A2;".";"#";UZUNLUK(A2)-UZUNLUK(YERİNEKOY(A2;".";""))))+1;UZUNLUK(A2))
Formül "xlsx" sonucunu verir. Aynı yapıyla klasör yolundaki son ters bölü işaretinden sonrasını alarak yalnız dosya adını da çıkarabilirsiniz.
BUL ile MBUL arasındaki fark
BUL büyük ve küçük harfe duyarlıdır, joker karakter kabul etmez. MBUL ise büyük ve küçük harfi ayırt etmez ve ? ile * joker karakterlerini destekler. "Kargo" kelimesinden sonrasını alırken metinde "kargo" küçük harfle yazılmışsa BUL bulamaz, MBUL bulur.
@ veya tire gibi işaretlerde iki fonksiyon aynı sonucu verir. Harf ya da kelime arıyorsanız ve yazımın tutarlı olduğundan emin değilseniz MBUL'u tercih edin.
Karakter yoksa ne olur?
Aranan karakter metinde yoksa BUL #DEĞER! hatası döndürür ve formülün tamamı hata verir. E-posta sütununda @ işareti olmayan hatalı bir kayıt bütün sütunda göze batan bir hata üretir. Bunu EĞERHATA ile yönetebilirsiniz: =EĞERHATA(PARÇAAL(A2;BUL("@";A2)+1;UZUNLUK(A2));"") karakter bulunmazsa boş metin döndürür.
Hatayı gizlemek yerine görünür bırakmak da bir seçenektir. Boş metin yerine "Kontrol et" yazdırırsanız hatalı kayıtları filtreyle kolayca bulursunuz.
İki karakter arasındaki metni almak
Bazen aranan kısım iki işaretin arasındadır. "Kalem (mavi)" metninde rengi almak için parantezlerin yerini ayrı ayrı bulursunuz. Başlangıç, açılış parantezinin bir sonrasıdır; uzunluk da iki parantezin konum farkının bir eksiğidir.
=PARÇAAL(A2;BUL("(";A2)+1;BUL(")";A2)-BUL("(";A2)-1) formülü "mavi" sonucunu verir. Aynı yapı köşeli parantez ya da iki tire arasındaki metinler için de çalışır; yalnız aranan karakterleri değiştirirsiniz.
Microsoft 365'te SONRAKİMETİN
Microsoft 365 ve Excel 2024'te SONRAKİMETİN fonksiyonu bu işi tek adımda yapar. =SONRAKİMETİN(A2;"@") alan adını verir. Üçüncü argümanla kaçıncı tekrarın kullanılacağını seçebilirsiniz; eksi değer sondan saymayı sağlar, bu yüzden son tireden sonrası için ayrıca formül kurmanız gerekmez. Eski sürümlerde bu fonksiyon bulunmaz ve #AD? hatası verir.
Formülsüz yol: Bul ve Değiştir
Formül kullanmadan karakterden sonrasını silmek için Ctrl+H ile Bul ve Değiştir'i açın. Aranan kutusuna @* yazın, Yeni değer kutusunu boş bırakın ve Tümünü Değiştir'e basın. Yıldız joker karakteri @ işaretinden sonraki her şeyi temsil eder; işlem @ ile birlikte sonrasını siler.
Bu değişiklik doğrudan hücrelerin üzerinde yapılır. Önce yalnız ilgili sütunu seçin ve verinin bir kopyasıyla çalışın.
Sıradaki adım
Ayırmak istediğiniz sütunda aranan karakterin her satırda kaç kez geçtiğini kontrol edin. Tek sefer geçiyorsa PARÇAAL ve SOLDAN yeterlidir; birden fazla geçiyorsa YERİNEKOY'un tekrar numarasıyla doğru karakteri hedefleyin.
Bu rehberde kullanılan fonksiyonlar
Aynı konudaki diğer rehberler: Excel'de Metin İşlemleri
Sıkça Sorulan Sorular
Excel'de belirli bir karakterden sonrasını nasıl alırım?
=PARÇAAL(A2;BUL("@";A2)+1;UZUNLUK(A2)) formülü @ işaretinden sonraki kısmı verir. Microsoft 365'te =SONRAKİMETİN(A2;"@") da kullanılabilir.
Belirli bir karakterden sonrasını nasıl silerim?
Karakterden öncesini =SOLDAN(A2;BUL("@";A2)-1) ile alın. Formülsüz yol için Bul ve Değiştir'de Aranan kutusuna @* yazıp Yeni değer'i boş bırakın.
Formül neden #DEĞER! hatası veriyor?
Aranan karakter o hücrede yoktur. Formülü =EĞERHATA(...;"") ile sarmalayarak bu satırlarda boş sonuç döndürebilirsiniz.