• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Hücrede günün tarihini sabitlemek

Katılım
22 Eylül 2004
Mesajlar
12
A hücresine İsim B hücresine açıklama giriyorum. C hücresine giriş tarihini yani o günün tarihini yazdırmak istiyorum. Bugün formülü bu işi yapıyor. Fakat ertesi gün tarih değişiyor maalesef. Bu tarihi sabitlemenin bir yolu var mı? Yani verilerimin giriş tarihini ileride kontrol edebilmeliyim. Şu satırı şu tarihte girmişim demek için.
 
Sayfa adı sekmenizi sağ tuş ile tıklayıp kod görüntüle dedikten sonra VBA penceresine aşağıdaki kodları ekleyin B hücresine açıklama girdiğinizde C sütununa tarih atacaktır.


Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Aralik As Range, ilk As Range
      Set Aralik = Range("B2:B65536")
    Application.EnableEvents = False
    For Each ilk In Range(Target.Address)
        If Not Intersect(ilk, Aralik) Is Nothing Then ilk.Offset(0, 1) = Date
    Next ilk
    Application.EnableEvents = True
    Set Aralik = Nothing
End Sub
 
Ali arkadaş sağolasın. Verdiğin kod kısmen işimi çözdü. Şöyleki A-B-C-D-E-F hücrelerini kullanıyorum tarihi G hücresine yazmasını istiyorum. Ayrıca hücreleri yukarı aşağı oku ile gezerken bile yani veri girmediğim halde tarih yazıyor otomatikman.
 
Bende alternatif bir kod sunuyorum.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then Target.Offset(0, 1) = Date
End Sub
 
Kopyalarken change olayını gözden kaçırmışım Ali kardeş kusura bakma. Seyit arkadaşım sanada ayrıca teşekkür ederim. Her ikinizin verdiği kod'lar işime yaradı. Elleriniz dert görmesin.
 
Arkadaşlar bu sorunu kodsuz çözme şansı varmı?
Yani sadece formül kullanarak.
 
Muhterem arkadaşlar, burada dikkat edilmesi gereken bir unsur var. Daha sonra burada yapılan küçük bir düzeltme bile tarihi o gününün tarihi ile değiştiriyor. Bu durumda tarihin değeri de yok oluyor. burada eğer değer yoksa mantığı tarihi korur. Saygılar

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B2:B65536]) Is Nothing Then Exit Sub
If Cells(Target.Row, "C").Value = "" Then
Cells(Target.Row, "C").Value = Date
End If
End Sub
 
Merhaba,

Ctrl+Shift+; günün tarihini
Ctrl+Shift+: o anki saati hücreye yazar

Formül yoktur makro yoktur, böyle birşey işinize yarar mı?
 
Sayın Necdet_Yesertener çözümünüz çok pratik gerçekten. Birde bu koşulu şarta bağlayabilsek. Örneğin A1>0 ise B1 de günün tarihini yazıcak ve o tarih sonraki günlerde değişmeyecek.
 
Sayın xternet,
Benim önerim sadece tarihi kısa yoldan girmek içindi.
 
Teşekkürler Necdet Bey.
Herkese iyi çalışmalar. Hayırlı günler.
 
Necdet Hocaya Teşekkürler
 
Geri
Üst