SAĞDAN ile kimliklerin son bölümünü ayıklama
Excel'de RIGHT, bir metin dizisinin sonundan başlayarak belirtilen sayıda karakteri döndürür. Microsoft'un Türkçe sayfasında adı SAĞDAN'dır; bu sitenin HyperFormula kataloğunda SAĞ etiketi kullanılır. İsimler farklı olsa da işlevin hedefi metnin sağ bölümünü çıkarmaktır. Kaynak hücrenin sağa hizalı olması sonucu etkilemez; işlev görsel biçime değil hücre değerine bakar.
Bir kargo firması kayıtları TR-ANK-0042 biçiminde tanımlıyor olsun. İlk bölüm ülkeyi, ikinci bölüm dağıtım merkezini, son dört karakter ise gönderi sırasını gösterir. Son bölüm ayrı bir sütuna taşınırsa paket etiketindeki sıra numarası, uzun referans kodundan bağımsız kontrol edilebilir. Bununla birlikte yalnız son numaranın bütün firma içinde benzersiz olduğunu varsaymayın; farklı merkezlerde aynı sıra kullanılabilir.
Söz dizimi ve baştaki sıfırları koruma
İngilizce kullanım =RIGHT(text,[num_chars]), Türkçe Microsoft Excel biçimi =SAĞDAN(metin;[sayı_karakterler]) şeklindedir. Karakter sayısı verilmezse son tek karakter alınır. Bu site için İngilizce RIGHT ve virgül ayraçlı örnekler kullanılabilir; site yerelleştirmesindeki SAĞ adıyla Microsoft SAĞDAN adını karıştırmamak aktarım sırasında önemlidir.
A2 hücresine TR-ANK-0042 yazın. =RIGHT(A2,4) sonucu 0042 metnidir. Başındaki iki sıfır korunur. =RIGHT(A2) yalnız 2 döndürür. Çıktıyı sayısal dönüşümden geçirirseniz 42 elde edebilirsiniz; fakat bu, dört karakterlik kimlik biçimini kaybettirir. Etiket veya dosya anahtarı üretiyorsanız sonucu metin olarak kullanmak genellikle daha uygundur.
İşlev sıfır karakter istendiğinde boş metin verir. İstenen karakter sayısı metinden uzunsa kaynak metnin tamamı döner. Negatif sayı geçersizdir. Bu özellikler formülün doğruluğu için yararlı sınır testleridir: kısa kod, boş girdi, tam uzunluk ve aşırı büyük karakter sayısı ayrı ayrı denenmelidir. Özellikle kısa bir kodun otomatik tamamlanmış gibi algılanmaması gerekir.
Sabit son ek yerine yapısal çıkarım
Son bölümün uzunluğu değişebiliyorsa dört karakteri sabitlemek doğru olmaz. Örneğin ilk kısa çizgiden sonraki bütün bölümü almak için =RIGHT(A2,LEN(A2)-FIND("-",A2)) kullanılabilir. Bu girdide toplam uzunluk 11, ilk çizginin konumu üçtür; çıkarılan sekiz karakter ANK-0042 sonucunu oluşturur. Formül son çizgiyi aramaz; açıkça ilk çizgiden sonraki kısmı alır.
Bu ayrımı veri sözleşmesine yazın. Yalnız son çizgiden sonraki parçayı isteyen bir işlem, başka bir arama mantığı gerektirir. Ayırıcı hiç yoksa FIND hata üretir; bunu boş bir son ek gibi değerlendirmek yerine bozuk kod olarak işaretleyin. Bir arama tablosunda ülke, merkez ve sıra alanlarını ayrı tutmak, tekrar birleşik kod çözümlemekten daha sürdürülebilirdir.
İleri kontrol ve ürün farkları
Gizlenmiş son boşluklar sağdan çıkarımı kaydırabilir. Kodun sonunda yanlışlıkla normal boşluk varsa önce kaynağın uzunluğunu inceleyin; gerekiyorsa KIRP/TRIM ile kontrollü temizleme yapın. Boşluğun gerçekten gereksiz olduğunu doğrulamadan silmek, sabit genişlikli dosya kayıtlarında beklenen yapıyı bozabilir. Çıktı sütununda alınan bölüm ile kaynak kodun sonu birkaç örnek satırda karşılaştırılmalıdır.
Microsoft belgeleri Excel 2016, 2019, 2021, 2024 ve Microsoft 365 ürünlerini kapsar; RIGHTB'nin kullanım dışı olduğunu ve Uyumluluk Sürümü 2'de Unicode vekillerine ilişkin değişikliği belirtir. Emoji ve birleşik Unicode dizilerini basit ASCII kimliklerle aynı karakter sayımı altında düşünmeyin. Site HyperFormula 3.5.0 ile RIGHT hesaplamasını destekler. Buradaki gönderi kodları ve sınır örnekleri gerçek site motorunda çalıştırılarak kontrol edilmiştir.
Kaynaklar ve teknik doğrulama
İşlev davranışı ve ürün farkları için başvurulan resmi belgeler: