Excel VBA ile Bugünün Tarihini Yazma: 3 Farklı Yöntem (Date, Now, Format)
Excel VBA ile bugünün tarihini yazmak için 3 farklı yöntemi öğrenin. Date, Now ve Format fonksiyonları ile A1 hücresine tarih yazma. Windows ve Mac uyumlu.
Excel VBA ile bugünün tarihini yazmak, çalışmalarınıza otomatik olarak güncel tarih eklemenin en etkili yollarından biridir. Bu sayede verilerinizi zaman damgası ile takip edilebilir hale getirebilir, manuel tarih girişlerinden kaynaklanan hataları önleyebilirsiniz.
• VBA ile Date fonksiyonunu kullanarak tarih yazma
• Now ile tarih ve saati birlikte yazma
• Format ile özel tarih formatları oluşturma
• Kodları çalıştırma (Windows ve Mac)
• Sık yapılan hatalar ve çözümleri
• "Excel VBA ile bugünün tarihini nasıl yazarım?"
• "Date ve Now arasındaki fark nedir?"
• "Tarih formatını nasıl değiştirebilirim?"
• "Mac'te VBA ile tarih yazabilir miyim?"
Excel VBA ile Bugünün Tarihini Yazma Nedir?
Bugünün tarihini yazma, çalışmalarınıza otomatik olarak güncel tarih eklemek için kullanılan bir VBA işlemidir. Excel VBA kullanarak bu işlemi hızlıca yapabilir ve verilerinizi zaman damgası ile takip edilebilir hale getirebilirsiniz.
Kullanım Alanları:
- Raporlama: Raporların oluşturulma tarihini otomatik ekleme
- Veri Girişi: Veri girişi yapılan satırlara tarih damgası ekleme
- Takip Sistemleri: İşlemlerin ne zaman yapıldığını kaydetme
- Otomasyon: Tekrarlayan tarih girişlerini otomatikleştirme
Geliştirici Sekmesini Aktif Etme (VBA için ön hazırlık)
Kodu yazmak için öncelikli olarak üst menüden geliştirici sekmesinin aktif olduğundan emin olunuz. Eğer değilse, "Dosya" > "Seçenekler" > "Şeridi Özelleştir" menüsünden "Geliştirici"yi işaretleyin. Detaylı bilgi için linke tıklayabilirsiniz. Ardından, "Geliştirici" sekmesinden "Visual Basic" butonuna tıklayarak VBA Düzenleyicisini açabilir ve "Ekle" > "Modül" ile yeni bir modül ekleyebilirsiniz. Daha fazla bilgi için linke tıklayabilirsiniz.
Yöntem 1: Date ile Sadece Tarih Yazma
Date fonksiyonu, sistemin geçerli tarihini döndürür. Sadece tarih bilgisini içerir, saat bilgisi içermez.
Sub BugununTarihiniYaz()
' Bugünün tarihini A1 hücresine yaz
Range("A1").Value = Date
' Tarih formatını ayarla
Range("A1").NumberFormat = "dd/mm/yyyy"
End Sub
Kod Açıklaması:
- Range("A1"): A1 hücresini belirtir.
- Date: Bugünün tarihini döndüren VBA fonksiyonudur.
- NumberFormat: Tarihin görüntülenme biçimini ayarlar.
Yöntem 2: Now ile Tarih ve Saat Yazma
Now fonksiyonu, sistemin geçerli tarih ve saatini birlikte döndürür. Bu yöntem, zaman damgası gerektiren işlemler için idealdir.
Sub TarihVeSaatYaz()
' Tarih ve saati A1 hücresine yaz
Range("A1").Value = Now
' Tarih ve saat formatını ayarla
Range("A1").NumberFormat = "dd/mm/yyyy hh:mm:ss"
End Sub
Kod Açıklaması:
- Now: Geçerli tarih ve saati döndürür.
- NumberFormat: Tarih ve saat birlikte görüntülenecek şekilde formatlanır.
Yöntem 3: Format ile Özel Tarih Formatı
Format fonksiyonu, tarihi istediğiniz formatta doğrudan hücreye yazmanızı sağlar. Bu yöntem, NumberFormat ile ayrıca format ayarlamak zorunda kalmazsınız.
Sub OzelFormatTarih()
' Bugünün tarihini özel formatta A1 hücresine yaz
Range("A1").Value = Format(Date, "dd-mm-yyyy")
' Alternatif formatlar:
' Range("A2").Value = Format(Date, "dd MMMM yyyy") ' 11 Temmuz 2026
' Range("A3").Value = Format(Date, "dddd, dd MMMM yyyy") ' Cumartesi, 11 Temmuz 2026
' Range("A4").Value = Format(Date, "mm/dd/yyyy") ' 07/11/2026 (US format)
End Sub
Kullanılabilecek Format Kodları:
- dd/mm/yyyy: 11/07/2026
- dd-mm-yyyy: 11-07-2026
- dd MMMM yyyy: 11 Temmuz 2026
- dddd, dd MMMM yyyy: Cumartesi, 11 Temmuz 2026
- mm/dd/yyyy: 07/11/2026 (US formatı)
3 Yöntemin Karşılaştırması
| Özellik | Date | Now | Format |
|---|---|---|---|
| Döndürdüğü Bilgi | Sadece Tarih | Tarih + Saat | Formatlanmış Tarih |
| Format Ayarlama | NumberFormat gerekli | NumberFormat gerekli | Doğrudan Format ile |
| Kullanım Kolaylığı | ✅ Kolay | ✅ Kolay | ✅ Kolay |
| Esneklik | ⚠️ Orta | ⚠️ Orta | ✅ Yüksek |
| Mac Uyumu | ✅ Çalışır | ✅ Çalışır | ✅ Çalışır |
| Önerilen Kullanım | Sadece tarih gerekiyorsa | Tarih ve saat gerekiyorsa | Özel format gerekiyorsa |
VBA Kodlarını Çalıştırma (Windows ve Mac)
Kodları çalıştırmak için şu adımları izleyin:
- Geliştirici sekmesinden Visual Basic'e tıklayın.
- Ekle → Modül seçeneği ile yeni bir modül ekleyin.
- Kodu modüle yapıştırın.
- F5 tuşuna basarak veya Çalıştır butonuna tıklayarak makroyu çalıştırın.
Sık Yapılan Hatalar ve Çözümleri
| Hata Türü | Nedeni | Çözüm |
|---|---|---|
| Yanlış hücre referansı | Range("A1") yanlış yazılmış | Doğru hücre adresini kullanın |
| Makro güvenlik ayarları | Makrolar devre dışı | Dosya → Seçenekler → Güven Merkezi → Makro ayarlarını kontrol edin |
| Çalışma sayfası korumalı | Sayfa koruması aktif | Sayfanın korumasını kaldırın |
| Yanlış format kodu | Geçersiz NumberFormat | Doğru format kodunu kullanın |
Profesyonel İpuçları
✅ Zaman Tasarrufu İpuçları
- Makroya kısayol tuşu atayarak hızlıca çalıştırın
- Tarih yazma işlemini özel bir butona bağlayın
- Kodu Kişisel Makro Çalışma Kitabı'na kaydederek tüm dosyalarda kullanın
- Tarih formatını sabit bir değişkende tanımlayarak tekrar kullanın
💻 macOS Kullanıcıları İçin
- ⌘ + C / ⌘ + V → Kopyala / Yapıştır
- Option + F11 → VBA Düzenleyici
- F5 → Makroyu çalıştır
- ⌘ + Z → Geri Al (makro sonrası çalışmaz!)
macOS Kullanıcıları İçin Özel Notlar
⌘ + C / ⌘ + V → Kopyala / Yapıştır
Option + F11 → VBA Düzenleyici
F5 → Makroyu çalıştır
Mac'te VBA ile tarih yazma işlemi Windows ile aynı şekilde çalışır. Date, Now ve Format fonksiyonları Mac'te de aynı şekilde kullanılır.
⚠️ Mac'te tarih formatları sistem ayarlarına bağlı olarak değişebilir. NumberFormat ile format belirtmeniz önerilir.
Sıkça Sorulan Sorular (SSS)
1. Excel VBA ile bugünün tarihini nasıl yazabilirim?
Excel VBA ile bugünün tarihini yazmak için Range("A1").Value = Date kodunu kullanabilirsiniz. Bu kod, geçerli sistem tarihini A1 hücresine yazar.
2. Excel VBA'da Date ve Now arasındaki fark nedir?
Date sadece tarihi (gün/ay/yıl) döndürürken, Now hem tarihi hem de saati (gün/ay/yıl saat:dakika:saniye) döndürür.
3. Excel VBA ile tarih formatını nasıl değiştirebilirim?
Tarih formatını değiştirmek için Range("A1").NumberFormat = "dd/mm/yyyy" komutunu kullanabilirsiniz. Veya Format(Date, "dd-mm-yyyy") ile doğrudan formatlayabilirsiniz.
4. Excel VBA makrosunu Mac'te çalıştırabilir miyim?
Evet, Excel VBA makroları Mac'te de çalışır. Geliştirici sekmesini etkinleştirin, Option+F11 ile VBA düzenleyicisini açın ve kodu yapıştırın. F5 ile çalıştırabilirsiniz.
5. Excel VBA ile bugünün tarihini belirli bir formatta nasıl yazarım?
Range("A1").Value = Format(Date, "dd-mm-yyyy") komutunu kullanarak tarihi istediğiniz formatta yazabilirsiniz.
6. Excel VBA'da tarih yazarken hata alıyorum, ne yapmalıyım?
En sık karşılaşılan hatalar: 1) Yanlış hücre referansı → Doğru hücre adresini kullanın. 2) Makro güvenlik ayarları → Makroları etkinleştirin. 3) Çalışma sayfası korumalı → Sayfanın korumasını kaldırın.
İlginizi Çekebilecek Makaleler
Excel Checkbox Ekleme
Excel'de checkbox (onay kutusu) eklemeyi ve kullanmayı öğrenin. Etkileşimli raporlar oluşturun.
Devamını Oku →Excel Formül Çubuğu: Gösterme, Genişletme ve Gizleme
Excel formül çubuğunu gösterme, genişletme ve gizleme işlemlerini öğrenin.
Devamını Oku →Excel Formülleri: 10 Temel İpucu ve Fonksiyon
Excel'de en çok kullanılan 10 temel formül ve ipucunu öğrenin.
Devamını Oku →Temel Makro Formülleri
Projelerinize ilham verecek 50 makro kodu.
Devamını Oku →Tekrarlanan Değerleri Bulma
Excel VBA ile tekrar eden verileri tespit edin.
Devamını Oku →Excel VBA ile Yukarı Yuvarlama
Excel VBA ile sayıları yukarı yuvarlamak için 3 farklı yöntem.
Devamını Oku →