Skip to main content

AccessTr.neT


Tabodaki Sıfır Değeri İçeren Satırları Silme

ercansahiner61
ercansahiner61
15
486

Tabodaki Sıfır Değeri İçeren Satırları Silme

Çözüldü #1
İyi akşamlar,  bir tablom var,  sıfır değerli satırları silmek istiyorum, makro ile yaptığımda tek tek tümünü siliyor.
filtreleme ile yaptığımda ise aradaki dolu satırlarıda siliyor,
benim isteiğim seçili (Bakiye) sütununda (0) değer içeren satırların silinmesini istiyorum.
Yardımlarınız için şimdiden teşekkür ederim.
.rar filtrelenen verileri silme XLSM.rar (Dosya Boyutu: 22,82 KB | İndirme Sayısı: 6)
Cevapla
#2
aşağıdaki makroyu dener misiniz?
Visual Basic Code
Sub SilFiltreli()
Dim Syf As Worksheet
    Set Syf = ThisWorkbook.Worksheets("sayfa1")
    
    With Syf
    sonstr = Syf.Cells(Syf.Rows.Count, "h").End(xlUp).Row
    Syf.ListObjects("tablo5").Range.AutoFilter field:=7, Criteria1:="0,00"
    Set Rng = Syf.Range("A2:a" & sonstr).Rows.SpecialCells(xlCellTypeVisible)

    dz = Replace(Rng.Address, "$A$", "")
    dizi = Split(dz, ",")
        For x = UBound(dizi) To LBound(dizi) Step -1
            Syf.Range("A" & dizi(x)).EntireRow.Delete
        Next x
    Syf.ListObjects("tablo5").Range.AutoFilter field:=7
    End With

End Sub
Cevapla
#3
yada aşağıdaki gibi, yukardaki kodda eğer 0'a eşit alan yoksa hata veriyordu
Visual Basic Code
Sub SilFiltreli()
Dim Syf As Worksheet
    Set Syf = ThisWorkbook.Worksheets("sayfa1")
    
    With Syf
    sonstr = .Cells(.Rows.Count, "h").End(xlUp).Row
        .ListObjects("tablo5").Range.AutoFilter field:=7, Criteria1:="0,00"
    Set Rng = .Range("A1:a" & sonstr).Rows.SpecialCells(xlCellTypeVisible)

    dz = Replace(Rng.Address, "$A$", "")
    dizi = Split(dz, ",")
        For x = UBound(dizi) To LBound(dizi) + 1 Step -1
            Syf.Range("A" & dizi(x)).EntireRow.Delete
        Next x
    Syf.ListObjects("tablo5").Range.AutoFilter field:=7
    End With

End Sub
Cevapla
#4
Visual Basic Code
Sub Sýfýrdeðerlisatýrlarýsil()

    Dim i As Long, son As Long
    Application.ScreenUpdating = False
    With ThisWorkbook.Sheets("Sayfa1")
        son = .ListObjects("Tablo5").Range.Columns(7).Cells.Find("*", _
                                SearchOrder:=xlByRows, LookIn:=xlValues, SearchDirection:=xlPrevious).Row
        If son < 2 Then Exit Sub
        For i = son To 2 Step -1       
            If Len(Trim(.Cells(i, "H").Value)) > 0 And .Cells(i, "H").Value = 0 Then .Rows(i).EntireRow.Delete
        Next
    End With
    Application.ScreenUpdating = True
End Sub
Cevapla
#5
Emeği geçenlerin eline sağlık Çok teşekkür ederim, ilk sıfır değerleri silme makrosu güzel çalışıyor. ancak ben burda düzenlerim diye esas tabloyu göndermemiştim. şimdi o tablo üzerinde kod yazma becerim zayıf olduğu için düzenleme şansım olmadı. aynı makroyu "vadeli Hesap" sayfasında mevcut "R" sütunundeki SIFIR BAKİYELi SATIRLARIN SİLİNMESİ için tablo üzerinde düzenleme yaparak dosya halinde ekleyebilirseniz memnun olurum.
Kolay gelsin.
İyi Ramazanlar,
.rar Sıfır Bakiyeleri SİLM XLSM.rar (Dosya Boyutu: 63,75 KB | İndirme Sayısı: 4)
Cevapla
#6
Rica ederiz.4.mesajdaki kod sıfır olan satırları siliyor denemeden kod yollamam Img-grin
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da