📌 AI Özet: 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.

💡 Bu makale sonunda şunları öğreneceksiniz:
• 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
🤔 Bu Makale Hangi Soruları Cevaplamayı Hedefliyor?
• "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
📌 İpucu: VBA ile tarih yazma işlemi, manuel tarih girişine göre çok daha hızlı ve hatasız bir yöntemdir. Özellikle büyük veri setlerinde zaman kazandırır.

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.
⚠️ Uyarı: Date fonksiyonu sadece tarih döndürür. Eğer saat bilgisine de ihtiyacınız varsa Now fonksiyonunu kullanmalısınız.

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.
📌 İpucu: Now fonksiyonu, veri girişi sırasında işlemin tam olarak ne zaman yapıldığını kaydetmek için çok kullanışlıdı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:

  1. Geliştirici sekmesinden Visual Basic'e tıklayın.
  2. EkleModül seçeneği ile yeni bir modül ekleyin.
  3. Kodu modüle yapıştırın.
  4. F5 tuşuna basarak veya Çalıştır butonuna tıklayarak makroyu çalıştırın.
📌 İpucu: Mac'te de aynı adımlar geçerlidir. Geliştirici sekmesi etkinleştirildikten sonra Option+F11 ile VBA düzenleyicisine erişebilirsiniz.

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.