• DİKKAT

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

excel aynı kod farklı hücrede çalışmıyor

Katılım
8 Ocak 2016
Mesajlar
98
Excel Vers. ve Dili
Microsoft Office 2021 Professional Plus
Merhaba arkadaşlar kod örn a1 hücresine herhangi bir veri girdiğimizde b1 hücresine o anki tarih ve saati atıyor ama bunu örn d1 hücresine de veri girildiğinde e1 atsın istiyorum olmuyor.
2. bir attığı tarihin yanındaki veriyi değiştirince tarih saat kendini yeniliyor yenilemesi mantıklı ama durumu yazan kısma veri girdiğimde ise buda sabit kalabilirmi şimdiden teşekkürler
 

Ekli dosyalar

Merhaba @GhostCu

Örnek belgenizi dış serverler'den birine yükleyip link paylaşabilir misiniz.
Teşekkürler.
 
Sayfadaki tüm kodu silip aşağıdaki kodu uygulayınız.

C++:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim Alan As Range, Veri As Range
    If Intersect(Target, Union(Range("C3:C1000"), Range("I3:I1000"))) Is Nothing Then Exit Sub
    If Target.Cells.Count = 1 Then
        Set Alan = Target
    Else
        Set Alan = Selection
    End If
        
    For Each Veri In Intersect(Alan, Union(Range("C3:C1000"), Range("I3:I1000")))
        Select Case Veri.Column
            Case 3
                Veri.Offset(0, 2) = Now
            Case 9
                If Veri.Offset(0, -1) = "" Then Veri.Offset(0, -1) = Now
        End Select
    Next
End Sub
 
korhan bey çok teşekkür ederim
Sayfadaki tüm kodu silip aşağıdaki kodu uygulayınız.

C++:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim Alan As Range, Veri As Range
    If Intersect(Target, Union(Range("C3:C1000"), Range("I3:I1000"))) Is Nothing Then Exit Sub
    If Target.Cells.Count = 1 Then
        Set Alan = Target
    Else
        Set Alan = Selection
    End If
      
    For Each Veri In Intersect(Alan, Union(Range("C3:C1000"), Range("I3:I1000")))
        Select Case Veri.Column
            Case 3
                Veri.Offset(0, 2) = Now
            Case 9
                If Veri.Offset(0, -1) = "" Then Veri.Offset(0, -1) = Now
        End Select
    Next
End Sub
Teşekkürler korhan bey çalıştı peki şunu yapma şansımız varmı veri girdiğimizde o tarih ve saat kalsın veri girilecek hücreye silip tekrar veri girdğimde günceli atıyor bir defa veri girildiğinde verilen o tarih ve saat kalabilir mi?
günceli atması için tarihi ve saat olan hücreyi silmek gereksin
 
İnceleyiniz.

Sayfa koruması 12345

Tarih ve zamanı yazan sütunlarda işlem yapmak istediğinizde E2 ya da H2 hücresine çift tıklayınız. Sonra bu alanlarda düzenleme yapabilirsiniz.
 

Ekli dosyalar

İnceleyiniz.

Sayfa koruması 12345

Tarih ve zamanı yazan sütunlarda işlem yapmak istediğinizde E2 ya da H2 hücresine çift tıklayınız. Sonra bu alanlarda düzenleme yapabilirsiniz.
Korhan bey korumayla uğraşmamak için bende şöyle bir düzeltme yaptım ve oldu
C++:
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Target, Range("E2", "H2")) Is Nothing Then Exit Sub
    Cancel = True
    ActiveSheet.Unprotect "12345"
End Sub

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim Alan As Range, Veri As Range
    If Intersect(Target, Union(Range("C3:C1000"), Range("I3:I1000"))) Is Nothing Then Exit Sub
    ActiveSheet.Unprotect "12345"
    If Target.Cells.Count = 1 Then
        Set Alan = Target
    Else
        Set Alan = Selection
    End If
        
    For Each Veri In Intersect(Alan, Union(Range("C3:C1000"), Range("I3:I1000")))
        If Veri.Value <> "" Then
            Select Case Veri.Column
                Case 3
                    If Veri.Offset(0, 2) = "" Then Veri.Offset(0, 2) = Now
                Case 9
                    If Veri.Offset(0, -1) = "" Then Veri.Offset(0, -1) = Now
            End Select
        End If
    Next
    
    ActiveSheet.Unprotect "12345"
End Sub

ActiveSheet.Unprotect "12345" değilde ActiveSheet.Unprotect "12345" bunu yazdım hem üsttekini yani böyle daha işimi görür.
 
Tabi ki tercih sizin...
 
Geri
Üst