• DİKKAT

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

Yandaki sütunda log tutma

Katılım
2 Ekim 2016
Mesajlar
44
Excel Vers. ve Dili
.
Merhaba arkadaşlar
Aşağıdaki kodu nereden bulduğumu hatırlamıyorum ama benim isteğim;
A sütununda her değişiklik olduğunda hücrenin bir yanında ki sütuna önceki veri ve tarih saat gelsin.

Yani sadece A1 hücresinde ki değişiklik değil

Dim sayac Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo Son If Intersect(Target, [A1]) Is Nothing Then Exit Sub sayac = sayac + 1 Target.Offset(0, sayac) = Range("A1").Value Son: End Sub

Yardımlarınız için şimdiden teşekkür ederim.
 
Merhaba

Aşağıdaki kod blokları işinizi görür.

Selamlar...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Column = 1 Then
   
        If Len(Trim(metin)) > 0 Then Target.Offset(0, 1) = metin & "  - " & Date & " - " & Time
   
    End If
   
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Column = 1 Then
   
        metin = Target.Value
   
    End If

End Sub


Kodların görselini gösteren resim

1574247362852.png
 
Merhaba

Aşağıdaki kod blokları işinizi görür.

Selamlar...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Column = 1 Then
  
        If Len(Trim(metin)) > 0 Then Target.Offset(0, 1) = metin & "  - " & Date & " - " & Time
  
    End If
  
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Column = 1 Then
  
        metin = Target.Value
  
    End If

End Sub


Kodların görselini gösteren resim

Ekli dosyayı görüntüle 211242

Oncelikle ilginiz için teşekkür ediyorum.
Kodu denedim ve fark ettim ki istediğim durumu ben tam olarak aciklayamamisim.
Benim eklediğim kod ilk veri girildiğinde bir yanında ki sütuna veriyi yazıyor ve sonra a1 hücresinde her degisiklik yapıldığında +1 sütun şeklinde yan yana değişikliği yazıyor.
Benim icin gerekli olan bu şekilde çalışmalı ve bunu A sütünün tamamı için yapabilmeli ve sadece değişikliğin zamanını da yazilabilmeli
 
Merhaba

Yukardaki #3 numaralı mesajınızdaki talebinize göre revize edilmiş kodlar aşağıdadır. Sonuçtan haberdar ediniz.

Selamlar...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dolusütun

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    If Len(Trim(metin)) > 0 Then
   
        dolusütun = Cells(Target.Row, Columns.Count).End(xlToLeft).Column
        Target.Offset(0, dolusütun) = metin & "  - " & Time
       
        Columns("B:IU").EntireColumn.AutoFit
       
    End If

End If
   
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

On Error Resume Next

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    metin = Target.Value

End If

End Sub


İlgili kod resmi

1574249954774.png
 
Merhaba

Yukardaki #3 numaralı mesajınızdaki talebinize göre revize edilmiş kodlar aşağıdadır. Sonuçtan haberdar ediniz.

Selamlar...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dolusütun

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    If Len(Trim(metin)) > 0 Then
  
        dolusütun = Cells(Target.Row, Columns.Count).End(xlToLeft).Column
        Target.Offset(0, dolusütun) = metin & "  - " & Time
      
        Columns("B:IU").EntireColumn.AutoFit
      
    End If

End If
  
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

On Error Resume Next

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    metin = Target.Value

End If

End Sub


İlgili kod resmi

Ekli dosyayı görüntüle 211245
Tekrar teşekkür ediyorum mantık birebir bu şekilde sadece bir eksik oldu :(
İlk veri girisinde kayıt almıyor ve sonra hücrenin içeriğini sildigim zamanları da almıyor.
#1 de paylaştığım kod her işlemi +1 sütun olacak sekilde kayıt alıyor (ilk işlem ve hücre boş kalsa bile )
 
Merhaba

Yukardaki #5 numaralı taleplerinize göre revize edilmiş kodları veriyorum.

Kolay Gelsin...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dolusütun

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    If Len(Trim(Cells(Target.Row, 2))) < 1 Then


        Target.Offset(0, 1) = Target.Value & "  - " & Time
      
    Else
      
        dolusütun = Cells(Target.Row, Columns.Count).End(xlToLeft).Column
        Target.Offset(0, dolusütun) = metin & "  - " & Time
      
    End If
          
        Columns("B:IU").EntireColumn.AutoFit

End If
  
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

On Error Resume Next

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    metin = Target.Value

End If

End Sub


İlgili resim

1574257405118.png
 
Merhaba

Yukardaki #5 numaralı taleplerinize göre revize edilmiş kodları veriyorum.

Kolay Gelsin...

Kod:
Public metin
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dolusütun

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    If Len(Trim(Cells(Target.Row, 2))) < 1 Then


        Target.Offset(0, 1) = Target.Value & "  - " & Time
     
    Else
     
        dolusütun = Cells(Target.Row, Columns.Count).End(xlToLeft).Column
        Target.Offset(0, dolusütun) = metin & "  - " & Time
     
    End If
         
        Columns("B:IU").EntireColumn.AutoFit

End If
 
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

On Error Resume Next

If Target.Count > 1 Then Exit Sub

If Target.Column = 1 Then

    metin = Target.Value

End If

End Sub


İlgili resim

Ekli dosyayı görüntüle 211252
Gerçekten sizi de uğraştırdim
Hücreye veri girişi yapıyorum ilk veriyi yazıyor
Aynı hücreye tekrar veri girdiğimde ilk yazdığım veriyi tekrar yazıyor ve saati guncelliyor
Aynı hücreye 3. Kez veri girdiğimde 2. Girdiğim veriyi yazıyor ve saati guncelliyor
Ancak kontrol edebildim.
Hücrede yapılan her değişikliği ve o saati +1 şeklinde yazması yeterli olacak.
Hazırladığınız kod gerçekten çok güzel cok teşekkür ederim
Ama bu kod ilk veri girildiğinde doğru çalışıyor değişiklik yapıldığında bir önce ki veriyi bize veriyor.
Benim icin gerekli olan her değişiklikte kayıt tutması eğer bu şekilde düzenleme fırsatınız var ise minnettar olurum.
Yardımlarınız için tekrar teşekkür ederim
 
Kod bilmediğim için ne kadar kurcalasam da gerekli olan hale getiremedim. Bu kodu,
"O" sütununda, ( ilk girilen değer de dahil ) her değişikliği "AA" sütununa tarih ve saatı ile birlikte getirebilecek şekilde düzenleyebilir miyiz ?

Örnek ;
O1 hücreye a yazdık AA1 hücrede "a-tarih-saat"
O1 hücreye c yazdık AB1 hücrede "c-tarih-saat"
O1 hücreye g yazdık AC1 hücrede "g-tarih-saat"
O2000 hücreye q yazdık AA2000 hücrede "q-tarih-saat"
 
Geri
Üst