Excel'de Tarih ve Metni Birleştirme: Doğru Formüller
Excel'de tarih ile metni biçim kaybı olmadan birleştirmek için (örneğin "45432" yerine "15.04.2024" görüntülenmesi amacıyla), birleştirme formülü içinde TEXT fonksiyonunu kullanmanız gerekir. En hızlı yöntem: ="Metin " & TEXT(A1; "GG.AA.YYYY"). TEXT fonksiyonu olmadan Excel, program içinde tarihlerin sayı olarak saklanması nedeniyle tarihi sıra numarasına dönüştürür.
Aşağıda, evrensel & operatöründen modern liste fonksiyonlarına kadar tüm güncel yöntemler ele alınmıştır.
Birleştirme Sırasında Tarih Neden Sayıya Dönüşür?
Excel'de tarih, sayısal bir değerdir (1 Ocak 1900 tarihinden itibaren geçen gün sayısı). Tarih içeren bir hücreyi bir metin dizisiyle basitçe birleştirmeye çalıştığınızda, program hücrenin görsel biçimlendirmesini yok sayar ve ham sayısal değeri yerleştirir.
Tipik hata: A1 hücresinde bir tarih bulunan ="Rapor için " & A1 formülü, "Rapor için 45432" şeklinde bir sonuç döndürür. Bundan kaçınmak için tarihin, bir şablon belirtilerek açıkça metne dönüştürülmesi gerekir.
Yöntem 1: & Operatörü ve TEXT Fonksiyonu (Evrensel Yöntem)
Bu, Excel'in tüm sürümlerinde çalışan en güvenilir seçenektir. Ampersand (&) operatörü değerleri birleştirirken, TEXT fonksiyonu tarihe istenen görünümü kazandırır.
Sözdizimi:
="Metniniz " & TEXT(tarih_hücresi; "biçim_kodu")
Kullanım Örnekleri:
- Standart Biçim (GG.AA.YYYY): A1 hücresinde tarih varsa ve "Son Tarih: 15.04.2024" elde etmek istiyorsanız:
="Son Tarih: " & TEXT(A1; "GG.AA.YYYY")
```
2. **Yazıyla Tarih (Ay İsmiyle):**
"15 Nisan 2024" ifadesi için `GG AAAA YYYY` kodunu kullanın:
```excel
=TEXT(A1; "GG AAAA YYYY")
```
*Sonuç:* 15 Nisan 2024
3. **Amerikan Biçimi veya Dosyalar İçin:**
Çoğu zaman YYYY-AA-GG biçimi gerekir:
```excel
="Dosya_" & TEXT(A1; "YYYY-AA-GG") & ".xlsx"
```
*Sonuç:* Dosya_2024-04-15.xlsx
### Popüler Biçimlendirme Kodları Tablosu
<div class="table-container"><table style="border-collapse: collapse; width: 100%; margin: 16px 0;"><thead><tr><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">Biçim Kodu</th><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">15.04.2024 İçin Örnek Sonuç</th><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">Açıklama</th></tr></thead><tbody><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">GG.AA.YYYY</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">15.04.2024</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Standart Türkçe biçim</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">GG AAAA YYYY</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">15 Nisan 2024</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Ayın tam adı</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">GG AAA YY</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">15 Nis 24</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Kısaltılmış ay ve yıl</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">GG/AA/YY</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">15/04/24</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Eğik çizgi ile kısa biçim</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">GGGG, GG AAAA</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Pazartesi, 15 Nisan</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Haftanın günü ve tam tarih</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;"><code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">YYYY-AA-GG</code></td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">2024-04-15</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Uluslararası standart (ISO)</td></tr></tbody></table></div>
Türkçe Excel sürümünde formüllerdeki argüman ayracı genellikle noktalı virgüldür (;). İngilizce yerel ayarınız veya özel ayarlarınız varsa virgül (,) kullanın.
Yöntem 2: CONCAT ve CONCATENATE Fonksiyonları
CONCATENATE fonksiyonu eskimiş olsa da hala çalışmaktadır. Yerine daha esnek olan CONCAT gelmiştir. Tarihlerle çalışma prensibi aynı kalır: Tarihi mutlaka TEXT içine alın.
CONCAT Örneği:
=CONCAT("Sipariş No"; B1; " tarihli "; TEXT(A1; "GG.AA.YY"))
B1 hücresinde sipariş numarası ve A1 hücresinde tarih varsa, formül şu şekilde bir dize oluşturur: "Sipariş No123 tarihli 15.04.24".
Yeni sürümlerde (Excel 2016 ve üzeri) CONCATENATE yerine CONCAT kullanılması tercih edilir, çünkü hücre aralıklarını seçmeye olanak tanır; ancak tekil tarihler için fark önemsizdir.
Yöntem 3: TEXTJOIN ile Tarih Listelerini Birleştirme
Bir aralıktaki birkaç tarihi bir ayırıcı üzerinden tek bir satırda toplamak gerekiyorsa (örneğin tatil veya ödeme tarihlerini listelemek için), TEXTJOIN fonksiyonunu kullanın (Excel 2019 ve Microsoft 365'te mevcuttur).
Görev: A1:A3 aralığındaki tarihleri virgülle birleştirin. Formül:
=TEXTJOIN(", "; DOĞRU; TEXT(A1:A3; "GG.AA.YY"))
Önemli: Eski Excel sürümlerinde bu formülün dizi formülü olarak girilmesi (Ctrl+Shift+Enter) gerekebilir veya her bir tarihin önce TEXT fonksiyonuyla metne çevrilip ardından birleştirildiği yardımcı bir sütun gerekebilir.
Boş Hücrelerin İşlenmesi ve Koşullar
Çoğu zaman tarih mevcut olmayabilir. Hata veya garip bir metin yerine doğru bir mesaj göstermek için EĞER (veya IF) ile kontrol ekleyin.
Örnek: Tarih varsa "Rapor [tarih]" yaz, yoksa "Tarih belirtilmedi" yaz.
=EĞER(A1=""; "Tarih belirtilmedi"; "Rapor " & TEXT(A1; "GG.AA.YYYY"))
Ayrıca koşula bağlı olarak biçimi değiştirebilirsiniz. Örneğin, tarih mevcut yıldaysa sadece gün ve ayı gösterin, geçmiş yıldaysa tam yılı gösterin:
="Olay: " & EĞER(YIL(A1)=YIL(BUGÜN()); TEXT(A1; "GG AAAA"); TEXT(A1; "GG.AA.YYYY"))
Sık Yapılan Hatalar
- TEXT fonksiyonunun göz ardı edilmesi. En sık karşılaşılan sorun, tarih yerine beş haneli bir sayı elde etmektir. Çözüm her zaman aynıdır: tarih referansını
TEXT(...; "...")içine almak. - Yanlış ay kodları. Türkçe Excel sürümünde Latin harflerin (MM, YYYY) kullanılması, program arayüzü Türkçe olsa bile ayın sayı olarak veya İngilizce adıyla görüntülenmesine neden olabilir. Türkçe için Kiril alfabesi yerine Türkçe karakter kodlarını kullanın:
AA(ay rakamla),AAAA(ay yazıyla). - Gereksiz boşluklar.
&ile birleştirme yaparken tırnak işaretleri içinde manuel olarak boşluk eklemeyi unutmayın:"Metin" & " " & Tarih. Aksi takdirde kelimeler rakamlarla bitişik hale gelir.
SSS
Birleştirme sonrası tarih biçimini değiştirebilir miyim?
Hayır. Formülün sonucu bir metindir. Artık "Hücreleri Biçimlendir" menüsü üzerinden değiştirilemez. Biçim kodunu TEXT fonksiyonunun içinde düzeltmeniz gerekir.
Ay isminin ilk harfini nasıl büyük yaparım?
Türkçe yerel ayarında TEXT fonksiyonu ay isimlerini otomatik olarak küçük harfle yazar (ocak, şubat). Büyük harf yapmak için BAŞHARF (veya PROPER) fonksiyonunu kullanabilirsiniz:
=BAŞHARF(TEXT(A1; "gg aaaa yyyy")) → "15 Nisan 2024".
Bu formüller Google E-Tablolar'da çalışır mı?
Evet, sözdizimi tamamen uyumludur. TEXT, CONCATENATE, & ve TEXTJOIN fonksiyonları benzer şekilde çalışır.