• DİKKAT

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

Bir hücredeki veri silinirken diğer bilgilerin silinmesi

Katılım
1 Ekim 2017
Mesajlar
694
Excel Vers. ve Dili
2019 türkçe
İyi günler iyi çalışmalar arkadaşlar. Ekli dosyamda T ve U sütununda bulunan veryi sildiğimde yanında bulunan L:R aralığındaki bilgilerde silebilir miyiz acaba. Yardımcı olursanız çok memnun olurum.
 

Ekli dosyalar

Merhaba.

Sayfa adını sağ tıklatın "Kod Görüntüle" seçin açılan sayfaya aşağıdaki kodları kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("T:U")) Is Nothing Then Exit Sub
    If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
        Range("L" & Target.Row & ":R" & Target.Row).ClearContents
    End If
End Sub

T ve U her ikisi birden boş olduğunda L, R arasındaki hücrelerin içiniz siler
 
Merhaba.

Sayfa adını sağ tıklatın "Kod Görüntüle" seçin açılan sayfaya aşağıdaki kodları kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("T:U")) Is Nothing Then Exit Sub
    If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
        Range("L" & Target.Row & ":R" & Target.Row).ClearContents
    End If
End Sub

T ve U her ikisi birden boş olduğunda L, R arasındaki hücrelerin içiniz siler
Sayın Dalgalikur çok teşekkür ederim.
 
Merhaba.

Bütün kodları silip aşağıdakileri kopyalayın.
Deneme şansım olmadı deneyip geri dönüş yaparsınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B1:F1")) Is Nothing Then
        On Error Resume Next
      
        If Target.Count > 3 Then
            ActiveSheet.ShowAllData
        End If
        If Range("B1") = Empty And Range("c1") = Empty And Range("D1") = Empty And Range("E1") = Empty And Range("F1") = Empty Then
            ActiveSheet.ShowAllData
        Else
            If Target = Range("B1") Then
                Range("b2:F3").AutoFilter Field:=1, Criteria1:="*" & Target.Text & "*", VisibleDropDown:=True
            End If
        End If
    End If
  
    If Not Intersect(Target, Range("T:U")) Is Nothing Then
        If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
            Range("L" & Target.Row & ":R" & Target.Row).ClearContents
        End If
    End If
End Sub
 
Merhaba.

Bütün kodları silip aşağıdakileri kopyalayın.
Deneme şansım olmadı deneyip geri dönüş yaparsınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B1:F1")) Is Nothing Then
        On Error Resume Next
     
        If Target.Count > 3 Then
            ActiveSheet.ShowAllData
        End If
        If Range("B1") = Empty And Range("c1") = Empty And Range("D1") = Empty And Range("E1") = Empty And Range("F1") = Empty Then
            ActiveSheet.ShowAllData
        Else
            If Target = Range("B1") Then
                Range("b2:F3").AutoFilter Field:=1, Criteria1:="*" & Target.Text & "*", VisibleDropDown:=True
            End If
        End If
    End If
 
    If Not Intersect(Target, Range("T:U")) Is Nothing Then
        If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
            Range("L" & Target.Row & ":R" & Target.Row).ClearContents
        End If
    End If
End Sub
İyi günler iyi çalışmalar arkadaşlar. Dalgalikur arkadaşımız kodları yeniden yazdı Allah razı olsun denmemişti. denedim sil kodu çalışıyor. Üstte filtreleme kodu çalışmıyor. Yardımlarınızı bekliyorum. iyi çalışmalar.
 

Ekli dosyalar

Merhaba.
Kodları yeniden düzenledim.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SonSatir As Long
    If Not Intersect(Target, Range("B1:F1")) Is Nothing Then
        On Error Resume Next
        If Target.Count > 3 Then
            ActiveSheet.ShowAllData
        End If
        If Range("B1") = Empty And Range("c1") = Empty And Range("D1") = Empty And Range("E1") = Empty And Range("F1") = Empty Then
            ActiveSheet.ShowAllData
        Else
            SonSatir = Cells(Rows.Count, "F").End(3).Row
            Range("B2:F" & SonSatir).AutoFilter Field:=Target.Column - 1, Criteria1:="*" & Target.Text & "*"
        End If
    End If
    If Not Intersect(Target, Range("T:U")) Is Nothing Then
        If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
            Range("L" & Target.Row & ":R" & Target.Row).ClearContents
        End If
    End If
End Sub

Ancak örnek dosyada filtreleme çalışmaz.
Çünkü veriler sayısal olduğu için "*" & Target.Text & "*" şeklinde "içerir" kriteri belirtemezsiniz.
Eğer orjinal dosyanızda da sadece rakamlar varsa Target.Text şeklinde yazınız.
 
Merhaba.
Kodları yeniden düzenledim.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SonSatir As Long
    If Not Intersect(Target, Range("B1:F1")) Is Nothing Then
        On Error Resume Next
        If Target.Count > 3 Then
            ActiveSheet.ShowAllData
        End If
        If Range("B1") = Empty And Range("c1") = Empty And Range("D1") = Empty And Range("E1") = Empty And Range("F1") = Empty Then
            ActiveSheet.ShowAllData
        Else
            SonSatir = Cells(Rows.Count, "F").End(3).Row
            Range("B2:F" & SonSatir).AutoFilter Field:=Target.Column - 1, Criteria1:="*" & Target.Text & "*"
        End If
    End If
    If Not Intersect(Target, Range("T:U")) Is Nothing Then
        If Cells(Target.Row, "T") = "" And Cells(Target.Row, "U") = "" Then
            Range("L" & Target.Row & ":R" & Target.Row).ClearContents
        End If
    End If
End Sub

Ancak örnek dosyada filtreleme çalışmaz.
Çünkü veriler sayısal olduğu için "*" & Target.Text & "*" şeklinde "içerir" kriteri belirtemezsiniz.
Eğer orjinal dosyanızda da sadece rakamlar varsa Target.Text şeklinde yazınız.
Hayırlı Cumalar iyi çalışmalar. Kod çok iyi çalıştı. Çok teşekkür ederim. İyi çalışmalar
 
Geri
Üst