Excel'de Metin Parçası Çıkarma: Temel Yöntemler
Excel'de bir hücreden metin parçası çıkarmak için SOLDAN (dizenin başı için), SAĞDAN (sonu için) işlevlerini veya PARÇAAL ile BUL kombinasyonunu (orta kısım veya karakterler arasındaki metin için) kullanın. Bu araçlar, manuel kopyalama olmadan fazlalıkları otomatik olarak kesmenize, tarihleri, sipariş numaralarını veya soyadlarını ayıklamanıza olanak tanır.
Dizgelerle Çalışmak İçin Temel İşlevler
Metin konumunun sabit olduğu basit görevler için üç temel işlev yeterlidir. Bunlar tüm Excel sürümlerinde aynı şekilde çalışır.
- SOLDAN(metin; [karakter_sayısı]) — dizenin başından belirtilen sayıda karakteri döndürür.
- SAĞDAN(metin; [karakter_sayısı]) — dizenin sonundan karakterleri döndürür.
- PARÇAAL(metin; başlangıç_konumu; karakter_sayısı) — belirtilen konumdan başlayarak dizenin herhangi bir bölümünden bir parça çıkarır.
SOLDAN veya SAĞDAN işlevlerinde karakter sayısı belirtilmezse, varsayılan olarak bir karakter alınır. Çıkarılan parçanın uzunluğunu her zaman kontrol edin.
Kullanım örneği:
A2 hücresinde şu değer olduğunu varsayalım: Sipariş#2024-05-21|Durum.
=SOLDAN(A2; 5)formülü «Sipariş» kelimesini döndürür.=SAĞDAN(A2; 6)formülü «Durum» kelimesini döndürür.=PARÇAAL(A2; 7; 10)formülü «2024-05-21» tarihini döndürür (7. karakterden itibaren).
Ayırıcıya Göre Dinamik Metin Çıkarma
Veriler genellikle değişken uzunluktadır (örneğin, farklı uzunlukta isimler veya hesap numaraları). Bu durumlarda, sabit bir karakter sayısı belirtmek uygun değildir. Özel bir ayırıcı karakterin (tire, boşluk, diyez, dikey çizgi) konumunu bulmak gerekir.
Bunun için çıkarma işlevleri arama işlevleriyle birlikte kullanılır:
- BUL(bulunan_metin; nerede_aranacak) — bir karakterin konumunu bulur (büyük/küçük harfe duyarlı değildir).
- BULMA(bulunan_metin; nerede_aranacak) — BUL işlevine benzer ancak harf büyük/küçüklüğünü dikkate alır.
Belirli Bir Karakterden Önceki Metni Çıkarma
«#» işaretinden önce gelen her şeyi almak için, bu işaretin konumunu bulup bir çıkarmak gerekir (işaretin kendisini dahil etmemek için).
Formül:
=SOLDAN(A2; BUL("#"; A2) - 1)
Belirli Bir Karakterden Sonraki Metni Çıkarma
«|» işaretinden sonra gelen her şeyi almak için, konumunu belirleyip bir eklemek (bir sonraki karakterden başlamak için) ve toplam dize uzunluğu (UZUNLUK) ile birlikte SAĞDAN işlevini kullanmak gerekir.
Formül:
=SAĞDAN(A2; UZUNLUK(A2) - BUL("|"; A2))
Ayırıcı karakter hücrede yoksa, formül #DEĞER! hatası verir. Bundan kaçınmak için formülü EĞERHATA işlevi içine alın: =EĞERHATA(formülünüz; "").
Karmaşık Durumlar: İki Ayırıcı Arasındaki Metin
En sık karşılaşılan görev, iki karakter arasında bulunan bir parçayı çıkarmaktır (örneğin, parantez içindeki metin veya tireler arasındaki kod). Bunun için, çıkarılan parçanın uzunluğunun dinamik olarak hesaplandığı PARÇAAL işlevi kullanılır.
Formül mantığı:
- İlk ayırıcının konumunu bulun.
- İkinci ayırıcının konumunu bulun.
- İkinci konumdan ilk konumu ve ayırıcının kendi uzunluğunu çıkarın.
Örnek: Stokta Ürün (ÜrünKodu-123) dizesinden parantez ( ) arasındaki metni çıkarın.
Formül:
=PARÇAAL(A2; BULMA("("; A2) + 1; BULMA(")"; A2) - BULMA("("; A2) - 1)
Çalışma analizi:
BULMA("("; A2) + 1— çıkarma başlangıcını belirler (açık parantezin hemen ardından).BULMA(")"; A2) - BULMA("("; A2) - 1— parantez içindeki tam karakter sayısını hesaplar.
Çıkarma İşleminden Önce Verileri Temizleme
Bazen içe aktarma sırasında hücreye sızan gizli boşluklar veya yazdırılamayan karakterler nedeniyle çıkarma işlemi düzgün çalışmayabilir. Formülleri uygulamadan önce kaynak metni temizlemeniz önerilir.
- KIRP(metin) — baştaki, sondaki ve kelimeler arasındaki fazla boşlukları kaldırır (sadece tek bir boşluk bırakır).
- TEMİZLE(metin) — yazdırılamayan karakterleri kaldırır (genellikle 1C veya web formlarından gelen verilerde görülür).
Güvenilir sonuç için birleştirilmiş formül:
=SOLDAN(KIRP(TEMİZLE(A2)); 5)
Sık Yapılan Hatalar
- #DEĞER! Hatası — aranan ayırıcı metinde bulunamadığında oluşur. Çözüm: BUL veya EĞERHATA aracılığıyla karakter varlığını kontrol etmek.
- Yanlış Bağımsız Değişken Ayırıcı — Türkçe Excel sürümünde işlev bağımsız değişkenleri virgül yerine noktalı virgül (;) ile ayrılır. İngilizce kaynaklardan formül kopyalarsanız, virgülleri noktalı virgülle değiştirin.
- Büyük/Küçük Harf Duyarlılığı — BULMA işlevi «A» ve «a» arasında ayrım yapar, BUL ise yapmaz. Arama hassasiyeti gereksinimlerine göre işlevi seçin.
SSS
Bir dizgeden son kelime nasıl çıkarılır? Evrensel basit bir formül yoktur, çünkü son kelimenin uzunluğu bilinmemektedir. Yeni Excel sürümlerindeki en güvenilir yol, metin düzenleyici veya Power Query kullanmaktır. Eski sürümlerde, YERINEKOY işleviyle karmaşık bir kombinasyon kullanılarak son boşluk benzersiz uzun bir kodla değiştirilebilir ve ardından sağdan kırpma yapılabilir.
Hücre rengine göre metin çıkarılabilir mi? Bu, standart formüllerle yapılamaz. Biçimlendirmeye (renk, yazı tipi) dayalı metin çıkarmak için VBA makroları veya kullanıcı tanımlı işlevler kullanılması gerekir.
Aynı anda birden fazla parça çıkarmak gerekirse ne yapılmalı? Her veri parçası için ayrı sütunlar oluşturun. Örneğin, B sütununda adı, C sütununda soyadı, D sütununda yılı çıkarın. Bu, formüllerin düzenlenmesini ve hataların teşhis edilmesini kolaylaştırır.