Koşula Bağlı Satır Silme

Engin
Mesajlar: 6
Kayıt: 17 Eki 2023, 21:32
Meslek: Satış Sonrası Hizmet Personeli
Adınız: Engin
Soyadınız: Eryılmaz

Koşula Bağlı Satır Silme

Mesaj gönderen Engin »

Merhaba,

Elimde bir excel tablosu mevcut günlük olarak değişmektedir, ilgili tabloada koşula bağlı olarak makro ile satır silmem mümkün müdür?

1'inci koşul, W stununda Kontrol Edilmiştir yazıyor ise satırının tamamı silinecek
2'inci koşul, V stununda Listede Yok yazıyor ise N stunun kontrol edilecek Ücretli yazan satırları silecek

Böyle bir makro çalışması yapılması mümkün müdür
erseldemirel
Mesajlar: 84
Kayıt: 24 Haz 2023, 00:23
Web Sitesi: https://erseldemirel.com.tr/
Adınız: Ersel
Soyadınız: Demirel

Re: Koşula Bağlı Satır Silme

Mesaj gönderen erseldemirel »

Bir deneyiniz test sayfasında a sütunu son dolu satırdan itibaren çalışması lazım

Kod: Tümünü seç

Sub TEST()
     Set ws = ThisWorkbook.Sheets("TEST")
    sonSatir = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row 
    For i = sonSatir To 2 Step -1
        If ws.Cells(i, 23).Value = "Kontrol Edilmiştir" Then
            ws.Rows(i).EntireRow.Delete
        ElseIf ws.Cells(i, 22).Value = "Listede Yok" And ws.Cells(i, 14).Value = "Ücretli" Then
            ws.Rows(i).EntireRow.Delete
        End If
    Next i
End Sub
karisma61
Mesajlar: 16
Kayıt: 11 Eki 2023, 13:56
Meslek: Memur
Adınız: Ahmet
Soyadınız: KARIŞMA

Re: Koşula Bağlı Satır Silme

Mesaj gönderen karisma61 »

Kod: Tümünü seç

Dim sonSatir As Long, i As Long
    
    ' Son satır numarasını bul
    sonSatir = Cells(Rows.Count, "W").End(xlUp).Row
    
    ' Kontrol Edilmişleri Sil
    For i = sonSatir To 1 Step -1
        If Cells(i, "W").Value = "Kontrol Edilmiştir" Then
            Rows(i).EntireRow.Delete
        End If
    Next i
    
    ' Listede Yok ve Ücretli olanları sil
    For i = sonSatir To 1 Step -1
        If Cells(i, "V").Value = "Listede Yok" And Cells(i, "N").Value = "Ücretli" Then
            Rows(i).EntireRow.Delete
        End If
    Next i
Engin
Mesajlar: 6
Kayıt: 17 Eki 2023, 21:32
Meslek: Satış Sonrası Hizmet Personeli
Adınız: Engin
Soyadınız: Eryılmaz

Re: Koşula Bağlı Satır Silme

Mesaj gönderen Engin »

karisma61 yazdı: 05 Ara 2023, 13:48

Kod: Tümünü seç

Dim sonSatir As Long, i As Long
    
    ' Son satır numarasını bul
    sonSatir = Cells(Rows.Count, "W").End(xlUp).Row
    
    ' Kontrol Edilmişleri Sil
    For i = sonSatir To 1 Step -1
        If Cells(i, "W").Value = "Kontrol Edilmiştir" Then
            Rows(i).EntireRow.Delete
        End If
    Next i
    
    ' Listede Yok ve Ücretli olanları sil
    For i = sonSatir To 1 Step -1
        If Cells(i, "V").Value = "Listede Yok" And Cells(i, "N").Value = "Ücretli" Then
            Rows(i).EntireRow.Delete
        End If
    Next i
Merhaba, Sorunsuz çalışıyor teşekkür ederim, fakat veriler arttığında yavaşlıyor ve geç siliyor
Engin
Mesajlar: 6
Kayıt: 17 Eki 2023, 21:32
Meslek: Satış Sonrası Hizmet Personeli
Adınız: Engin
Soyadınız: Eryılmaz

Re: Koşula Bağlı Satır Silme

Mesaj gönderen Engin »

erseldemirel yazdı: 05 Ara 2023, 13:45 Bir deneyiniz test sayfasında a sütunu son dolu satırdan itibaren çalışması lazım

Kod: Tümünü seç

Sub TEST()
     Set ws = ThisWorkbook.Sheets("TEST")
    sonSatir = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row 
    For i = sonSatir To 2 Step -1
        If ws.Cells(i, 23).Value = "Kontrol Edilmiştir" Then
            ws.Rows(i).EntireRow.Delete
        ElseIf ws.Cells(i, 22).Value = "Listede Yok" And ws.Cells(i, 14).Value = "Ücretli" Then
            ws.Rows(i).EntireRow.Delete
        End If
    Next i
End Sub
Merhaba, Sorunsuz çalışıyor teşekkür ederim, fakat veriler arttığında yavaşlıyor ve geç siliyor
erseldemirel
Mesajlar: 84
Kayıt: 24 Haz 2023, 00:23
Web Sitesi: https://erseldemirel.com.tr/
Adınız: Ersel
Soyadınız: Demirel

Re: Koşula Bağlı Satır Silme

Mesaj gönderen erseldemirel »

Kodun en başına Application.ScreenUpdating = False en sonunada Application.ScreenUpdating = True ekleyin hızlandırır
Engin
Mesajlar: 6
Kayıt: 17 Eki 2023, 21:32
Meslek: Satış Sonrası Hizmet Personeli
Adınız: Engin
Soyadınız: Eryılmaz

Re: Koşula Bağlı Satır Silme

Mesaj gönderen Engin »

erseldemirel yazdı: 05 Ara 2023, 20:53 Kodun en başına Application.ScreenUpdating = False en sonunada Application.ScreenUpdating = True ekleyin hızlandırır
tşk ederim kolay gelsin.