Her hücrenin tarihi ve saati otomatik vermesi

Katılım
15 Kasım 2016
Mesajlar
1
Excel Vers. ve Dili
Excel 2007
TÜRKÇE
Merabalar.Ben vuslat_yolu rumuzlu kullanıcının sormuş olduğu sorunun aynısına ufak bi ekleme yaparak sormak istiyorum.

B hücrelerinde rakam olan bir sutunum var.F sutununda ise kayıt tarihi adlı bölüm var.

Ben B hücresine farklı zamanlarda kayıt eklediğimde f sutununda yer alan satırına o günün tarihini vermesini istiyorum.
Ve aşağı dogru kayıt işlemlerini yaptıkçada f sutununda kayıtın yapıldığı tarihleri görebilmek istiyorum.Ben bu işlemde saati de vermesini ve değişmemesini sabit kalmasını istiyorum ne yapmalıyım.
MAHİR ÇÜMEN BEY CEVAPLAMIŞ.
Lütfen kısa sürede yardımcı olabilirsen çok mutlu olurum.Şimdiden çok teşekkürler.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Alt tarafta uygulamayı kullanmak istediğiniz sayfa adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin.
Açılan VBA ekranında sağ taraftaki boş alana aşağıdaki kod'u yapıştırın.
F sütununun biçimin İSTEĞE UYARLANMIŞ kısmından gg.aa.yyyy ss:dd:nn

NOT: B sütununda ki bir hücreye bir veri yazıldıktan sonra
(veri yazıldığında F sütununa tarih/saat yazılmış durumda)
B sütunundaki veri silindiğinde F sütununda daha önce yazılmış olan
tarih/saat bilgisinin de silinmesini istemiyorsanız aşağıdaki kırmızı satır silin.
.
Kod:
[FONT="Arial Narrow"]Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1:B65536]) Is Nothing Then Exit Sub
If Cells(Target.Row, 2) <> "" Then Cells(Target.Row, "F") = Now
[COLOR="Red"]If Target = "" And Cells(Target.Row, "F") <> "" Then Cells(Target.Row, "F") = ""[/COLOR]
End Sub[/FONT]
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

Alternatif:

Kod:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
        
        With Target
            If .Count > 2 Then Exit Sub
            If Not Intersect(Range("B2:B200"), .Cells) Is Nothing Then
                Application.EnableEvents = False
                If IsEmpty(.Value) Then
                    .Offset(0, 4).ClearContents
                Else
                    With .Offset(0, 4)
                        .NumberFormat = "dd mm yyyy hh:mm:ss"
                        .Value = Now
                    End With
                End If
                Application.EnableEvents = True
            End If
        End With
    
    End Sub

.
 
Üst