DEĞİŞTİR Formülü (REPLACE): Belirli Konumdaki Karakterleri Değiştirme
DEĞİŞTİR
İngilizce adı: REPLACE
Yayın: · Son güncelleme:
DEĞİŞTİR kısaca
DEĞİŞTİR, bir metinde başlangıç konumu ve karakter sayısıyla belirttiğiniz bölümü yeni bir metinle değiştirir. Telefon numarasının ortasını gizlemek, koddaki yılı güncellemek ya da araya ayıraç eklemek için kullanılır.
Söz dizimi
DEĞİŞTİR(eski_metin; başlangıç_sayısı; sayı_karakterler; yeni_metin)REPLACE(old_text, start_num, num_chars, new_text)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 |
|---|---|---|
eski_metinold_text | Zorunlu | İçinde değişiklik yapılacak metin ya da hücre. |
başlangıç_sayısıstart_num | Zorunlu | Değiştirilecek ilk karakterin konumu. İlk karakter 1'dir. |
sayı_karakterlernum_chars | Zorunlu | Kaç karakterin değiştirileceği. 0 yazılırsa hiçbir karakter silinmez, yeni metin araya eklenir. |
yeni_metinnew_text | Zorunlu | Silinen bölümün yerine konacak metin. |
İçindekiler
DEĞİŞTİR'in çalışma mantığı
Excel DEĞİŞTİR formülü, metnin belirli bir konumundan başlayan belirli sayıda karakteri siler ve yerine yeni bir metin koyar. Neyin değişeceğini içeriğe göre değil, konuma göre söylersiniz. "TR-2025-0457" belge numarasındaki yılı güncellemek için =DEĞİŞTİR(A2;4;4;"2026") yazarsınız ve sonuç "TR-2026-0457" olur.
YERİNEKOY ile karıştırılabilir. Aradaki fark, YERİNEKOY'un "şu ifadeyi bul" demesi, DEĞİŞTİR'in ise "şu konumdaki karakterleri değiştir" demesidir.
Söz dizimi
Dört argümanın dördü de zorunludur. eski_metin değişikliğin yapılacağı metin, başlangıç_sayısı ilk değişecek karakterin sırası, sayı_karakterler silinecek karakter sayısı, yeni_metin ise yerine konacak metindir. Sayım 1'den başlar.
Yeni metnin uzunluğu silinen bölümle aynı olmak zorunda değildir. Dört karakter silip yerine on karakter koyabilir ya da hiç karakter silmeden araya ekleme yapabilirsiniz.
Telefon numarasını gizlemek
Müşteri listelerini paylaşırken numaranın bir kısmını gizlemek isteyebilirsiniz. "05324187765" numarasında 5. karakterden başlayan dört haneyi yıldızla değiştirmek için =DEĞİŞTİR(A2;5;4;"****") yazarsınız. Sonuç "0532****765" olur ve numara tanınabilir ama tam okunamaz hâle gelir.
Numaralar boşluklu yazılmışsa konumlar kayar. Önce YERİNEKOY ile boşlukları silip sonra DEĞİŞTİR uygulamak her satırda aynı sonucu verir.
Silmeden araya eklemek
sayı_karakterler 0 olduğunda fonksiyon hiçbir şey silmez ve yeni metni belirtilen konuma ekler. "ELK2041" gibi ayıraçsız kodları "ELK-2041" yapmak için =DEĞİŞTİR(A2;4;0;"-") yeterlidir. Tire, 4. karakterin önüne yerleşir.
Bu yöntem IBAN, vergi numarası ya da ürün kodlarını okunur gruplara ayırmak için de kullanılabilir. Birden fazla ekleme gerekiyorsa formülleri iç içe yazarsınız; içteki eklemenin konumları kaydırdığını hesaba katın.
Konumlar her satırda aynı değilse başlangıç noktasını BUL ile hesaplayabilirsiniz. E-posta adreslerinde @ işaretinden önceki ilk iki karakteri bırakıp gerisini gizlemek için başlangıç 3, karakter sayısı BUL("@";A2)-3 olur. Böylece farklı uzunluktaki adreslerde de aynı formül çalışır.
Yanlış sonuçların nedenleri
En sık hata, başlangıç konumunu yanlış saymaktır. Kodun başındaki görünmeyen bir boşluk bütün konumları bir kaydırır; önce KIRP uygulayın. Başlangıç 1'den küçükse ya da karakter sayısı negatifse #DEĞER! hatası alırsınız.
İkinci hata, sayı hücrelerinde baştaki sıfırın kaybolmasıdır. 05324187765 sayı olarak girildiyse Excel onu 5324187765 olarak saklar ve konumlar değişir. Telefon ve kod sütunlarını metin olarak saklamak bu sorunu baştan önler.
DEĞİŞTİR'i sabit yapılı kodları güncellemek için de kullanabilirsiniz. Ürün kodlarının ilk üç harfi kategoriyi gösteriyorsa ve bir kategori yeniden adlandırıldıysa, =DEĞİŞTİR(A2;1;3;"KRT") kodun geri kalanına dokunmadan yalnız ön eki değiştirir. Bu işlemi yalnız ilgili kategorideki satırlara uygulamak için formülü EĞER içine alırsınız.
Hangi durumda YERİNEKOY?
Değiştireceğiniz ifadenin konumu satırdan satıra değişiyorsa YERİNEKOY daha uygundur. Konumu BUL ile hesaplayıp DEĞİŞTİR'e vermek de bir seçenektir; =DEĞİŞTİR(A2;BUL("-";A2);1;"/") ilk tireyi bölü işaretine çevirir.
Şimdi bir kod sütununda değiştirmek istediğiniz bölümün başlangıç konumunu sayın ve =DEĞİŞTİR(A2;başlangıç;uzunluk;"yeni") ile deneyin. Ardından karakter sayısını 0 yapıp aynı formülün ekleme yaptığını görün.
Örnekler
| A | B | C | |
|---|---|---|---|
| 1 | Belge no | ||
| 2 | TR-2025-0457 | TR-2026-0457 |
=DEĞİŞTİR(A2;4;4;"2026")=REPLACE(A2,4,4,"2026")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: TR-2026-0457
4. karakterden başlayan dört karakter (2025) silinir, yerine 2026 yazılır.
| A | B | C | |
|---|---|---|---|
| 1 | Telefon | ||
| 2 | 05324187765 | 0532****765 |
=DEĞİŞTİR(A2;5;4;"****")=REPLACE(A2,5,4,"****")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: 0532****765
5. ile 8. karakterler arasındaki 4187 yıldızlarla değiştirilir.
| A | B | C | |
|---|---|---|---|
| 1 | Ürün kodu | ||
| 2 | ELK2041 | ELK-2041 |
=DEĞİŞTİR(A2;4;0;"-")=REPLACE(A2,4,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: ELK-2041
Karakter sayısı 0 olduğu için hiçbir şey silinmez; tire 4. konuma eklenir.
Yaygın hatalar ve çözümleri
- #DEĞER!
Neden: başlangıç_sayısı 1'den küçük ya da sayı_karakterler negatif.
Çözüm: Konumu 1'den başlayarak sayın, karakter sayısını 0 ya da daha büyük yazın.
#DEĞER! hatasının ayrıntılı çözümü →
İlgili fonksiyonlar
Sıkça Sorulan Sorular
Excel DEĞİŞTİR formülü nasıl kullanılır?
=DEĞİŞTİR(A2;5;4;"****") yazdığınızda A2'deki metnin 5. karakterinden başlayan dört karakter yıldızla değişir.
DEĞİŞTİR ile araya nasıl karakter eklerim?
Karakter sayısını 0 yazın. =DEĞİŞTİR(A2;4;0;"-") hiçbir şey silmeden 4. konuma tire ekler.
DEĞİŞTİR neden yanlış yeri değiştiriyor?
Metnin başında görünmeyen boşluk olabilir ya da sayı olarak saklanan değerin baştaki sıfırı kaybolmuştur. Önce KIRP uygulayın, kodları metin olarak saklayın.