Tarih Yazan Koda Silme Satırı Ekleme

Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Arkadaşlar merhaba. Bu forumdan edindiğim aşağıdaki koda silme satırı eklemek istiyorum. Yardımcı olursanız sevinirim.

Kodda v1:V50000 aralığına birşey yazınca W sütununa tarih yazıyor. Ben bu aralıktaki verileri sildikçe tarihlerin de silinmesini nasıl sağlayabilirim? Yani ben birşey yazarsam tarih yazılsın, yazdığımı silersem tarihte silinsin. Tabii aynı işlem diğer satır için de geçerli olmalı. Saygılar.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [v1:V50000]) Is Nothing Then Cells(Target.Row, "W") = Format(Date, "dd/mm/yyyy")
If Not Intersect(Target, [AS1:AS50000]) Is Nothing Then Cells(Target.Row, "AT") = Format(Date, "dd/mm/yyyy")
End Sub
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Deneyiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    On Error GoTo Son
    If Intersect(Target, [V:V,AS:AS]) Is Nothing Then Exit Sub
    
    If Target.Value = "" Then
        Target.Offset(0, 1) = ""
    Else
        Target.Offset(0, 1) = Date
    End If
Son:

End Sub
 
Son düzenleme:
Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Üstadım teşekkür ederim Verdiğiniz kod çalışıyor. Ancak Dosyamda format gereği birleştirilmiş hücrelerde tarihi yazmada problem yok ama silmek istediğimde ;

If Target.Value = "" Then

satırı sarı olup işlem yapmıyor. İlginize minnettarım. Saygılar.

 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Üstadım teşekkür ederim Verdiğiniz kod çalışıyor. Ancak Dosyamda format gereği birleştirilmiş hücrelerde tarihi yazmada problem yok ama silmek istediğimde ;

If Target.Value = "" Then

satırı sarı olup işlem yapmıyor. İlginize minnettarım. Saygılar.

Silmekten kastınız Satır silmek sanırım. Yukarıdaki kodu yeniledim, tekrar kopyalayınız.
 
Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Sayın Üstadlarım satır değil V ile AS sütunlarında değişik sayıda hücre birleştirerek sayfa numaralarını yazıyorum. Mesela Bakara Suresi 1 den 5. ayete kadar 1. sayfada. V sütununda 1 - 5 Ayetlere denk gelen hücreleri birleştirip 1 yazınca aynı şekilde birleştirilmiş W sütununda o sayfayı okuduğum tarih otomatik olarak yazılıyor. Benim istediğim satır değil 1 i sildiğimde tarihin de silinmesi, Hücre birleştirmesem Necdet Bey'in verdiği ilk kod çalışıyor. Ancak birleştirince hata veriyor. Seyit Tiken Bey'in önerisini de başaramadım. Saygılar.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Cepten baktığımdan deneyemiyorum:

Target.Offset(0,1).Select
Selection.ClearContents

Şeklinde dener misiniz?
 
Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Sayın Yusuf Bey bir türlü yapamadım. Yapmak istediğim ekli dosyada sarı renk dolguyla gösterdiğim (V ve AS sütunları) hücreleri boşaltınca yandaki tarihlerin de silinmesi. Saygılar.

 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Dener misiniz?

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    If Intersect(Target, [V:V,AS:AS]) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Target(1).Value = "" Then
        Target.Offset(0, 1).MergeArea.ClearContents
    Else
        Target.Offset(0, 1) = Date
    End If
    Application.EnableEvents = True

End Sub
 
Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Sayın Necdet Üstadım Bu sefer tam istediğim gibi çalıştı. Çok teşekkür ediyorum. Diğer ilgilenen üstadlara da teşekkür ediyorum. Sağolun.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,371
Excel Vers. ve Dili
Ofis 365 Türkçe
Sayın Necdet Üstadım Bu sefer tam istediğim gibi çalıştı. Çok teşekkür ediyorum. Diğer ilgilenen üstadlara da teşekkür ediyorum. Sağolun.
Güle güle kullanın, birleştirilmemiş hücre varsa onun denemelerini yapmadım, onu da siz deneyiniz.
 
Üst