Formül ile hücrede oluşan her değişiklikte yanındaki hücreye de otomatik tarih atma

Katılım
26 Nisan 2011
Mesajlar
3
Excel Vers. ve Dili
2007 tr
Altın Üyelik Bitiş Tarihi
19/03/2019
İyi akşamlar Excel konusunda yeniyim ve yapmak istediğim bazı şeyler var ve bunların çoğunu forumda araştırarak buldum ve kullanmaya çalışıyorum. şimdiye kadar forumda bilgi ve en önemlisi zamanlarını ayıran arkadaşlara da ayrıca çok teşekkür ederim.
Benim sorunum çalışma kitabımda Sayfa1 deki tabloda bulunan değişkenlerimden “GEÇERLİ” ve “SÜRESİ GEÇMİŞ” olanları saydırıp toplamlarını Sayfa2 deki A sütununa atıyorum. Sayfa2 deki A sütununa bir veri geldiğinde yanındaki sütuna otomatik tarih atmasını istiyorum. bununla ilgili makroyu da forumda buldum. ancak benim Sayfa1 deki tabloda bulunan saydırdığım değişkenlerim zamanla değişebilir ve yaptığım formülle Sayfa2 deki A sütundaki rakamlarda değişebilir. yapmak istediğim sayfa1 de yaptığım her değişikliğe bağlı olarak sayfa2 deki A sütununda olacak her değişim sırasında tarihinde otomatik değişmesini istiyorum. örnek dosyam ektedir.
Bu konuda yardımcı olacak arkadaşlara şimdiden çok teşekkür ederim
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,745
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

İlk olarak dosyanızda uyguladığınız kodu silin.

Daha sonra ThisWorkbook bölümüne aşağıdaki kodu uygulayın.

Kod:
Private Sub Workbook_Activate()
    ActiveCell.Next.Select
    ActiveCell.Previous.Select
End Sub

Private Sub Workbook_Open()
    ActiveCell.Next.Select
    ActiveCell.Previous.Select
End Sub
Sayfa1 isimli sayfanızın kod bölümüne aşağıdaki kodu uygulayın.

Kod:
Dim Eski_Veri As Variant

Private Sub Worksheet_Activate()
    ActiveCell.Next.Select
    ActiveCell.Previous.Select
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A2:D" & Rows.Count)) Is Nothing Then Exit Sub
    On Error Resume Next
    Application.EnableEvents = False
    If Target.Value <> Eski_Veri Then
        Sheets("Sayfa2").Cells(Target.Row, "B").Value = Date
        Sheets("Sayfa2").Cells(Target.Row, "B").NumberFormat = "dd.mm.yyyy"
    End If
    Application.EnableEvents = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Eski_Veri = Target
End Sub
Dosyanızı kayıt edip kapatıp açın ve denemeler yapın.
 
Katılım
26 Nisan 2011
Mesajlar
3
Excel Vers. ve Dili
2007 tr
Altın Üyelik Bitiş Tarihi
19/03/2019
üstadım yanıtınızı şimdi gördüm şimdiden çok teşekkür ederim, ilk fırsatta deneyip size tekrar teşekkür edeceğim
 
Katılım
26 Nisan 2011
Mesajlar
3
Excel Vers. ve Dili
2007 tr
Altın Üyelik Bitiş Tarihi
19/03/2019
Korhan Bey yazdığınız kodu ancak deneme fırsatım oldu, gayet güzel çalışıyor çok teşekkür ederim iyi çalışmalar.
 
Üst