Skip to main content

AccessTr.neT


Sıfır Bakiyeli Satırları Silme

ercansahiner61
ercansahiner61
5
421

Sıfır Bakiyeli Satırları Silme

Çözüldü #1
Kolay gelsin,
daha öncede bu konuyu açtım ancak istediğim sonuçları alamadım ben kendi yapmaya çalıştım, ancak
Hesap No ile silme düzgün çalışıyor, ancak Sıfır Bakiyeli satırları sil macrosu çalıştırıldığında sıfır değeri içeren hücreler kayboluyor ancak 0 sıfır değerini içeren tüm Tablo  satırlarının silinmesi gerekiyor.
bunu yapan kodu uygulama içine yapabilirimsiniz.
şimdiden teşekkürler

Sevgili Feraz hocam uygulama dosyasını eklememi yazmıştı, ben de ekledim.
.rar Sıfır Bakiye satır sil.rar (Dosya Boyutu: 26,52 KB | İndirme Sayısı: 3)
Son Düzenleme: 18/11/2022, 21:42, Düzenleyen: ercansahiner61.
Cevapla
#2
Sıfır bakiyeleri sil makronuzu aşağıdaki ile değiştirin


Dim Tbl As ListObject
Set Tbl = ActiveSheet.ListObjects(1)
ActiveSheet.ListObjects("Tablo4").Range.AutoFilter Field:=7, Criteria1:= _
"0,00"
Tbl.DataBodyRange.SpecialCells(xlCellTypeVisible).Delete
ActiveSheet.ListObjects("Tablo4").Range.AutoFilter Field:=7
Cevapla
#3
Çok teşekkür ederim. iyi geceler,
Küçük bir sorun var tabloda sıfır bakiye değer yokken makro çalıştırıldığında filteleme kaldırılmıyor, tüm verileri göstermiyor ve hata veriyor.
yapmak istediğim sıfır bakiye yokken makro çalışmasın yani işlem yapmasın istiyorum  ben uğraştım ama yapamadım küçük bir kod ekleyebilirseniz memnun olurum.
Son Düzenleme: 19/11/2022, 04:02, Düzenleyen: ercansahiner61.
Cevapla
#4
Aynı soruyu eski konunuzda da örnek ekleyerek sormuşsunuz
Orada da verdiğim cevap:

Kodunuzu aşağıdaki gibi revize edin

Sub SıfırBakiyeliHesaplarıSİL()
Dim wb As Workbook
Set wb = ThisWorkbook
Dim tbl As ListObject
Set tbl = ActiveSheet.ListObjects(1)
Dim dvrg As Range

With tbl
If .ShowAutoFilter Then
If .AutoFilter.FilterMode Then .AutoFilter.ShowAllData
End If
.Range.AutoFilter 7, "0,00"
On Error Resume Next
Set dvrg = tbl.DataBodyRange.SpecialCells(xlCellTypeVisible).Delete
On Error GoTo 0
.AutoFilter.ShowAllData
End With

ActiveSheet.ListObjects("Tablo4").Range.AutoFilter Field:=7
Range("B2").Select
End Sub
Cevapla
#5
(20/11/2022, 14:21)atoykan yazdı: Aynı soruyu eski konunuzda da örnek ekleyerek sormuşsunuz
Orada da verdiğim cevap:

Kodunuzu aşağıdaki gibi revize edin

Sub SıfırBakiyeliHesaplarıSİL()
Dim wb As Workbook
Set wb = ThisWorkbook
Dim tbl As ListObject
Set tbl = ActiveSheet.ListObjects(1)
Dim dvrg As Range
 
    With tbl
        If .ShowAutoFilter Then
            If .AutoFilter.FilterMode Then .AutoFilter.ShowAllData
        End If
        .Range.AutoFilter 7, "0,00"
        On Error Resume Next
            Set dvrg = tbl.DataBodyRange.SpecialCells(xlCellTypeVisible).Delete
        On Error GoTo 0
        .AutoFilter.ShowAllData
    End With
   
  ActiveSheet.ListObjects("Tablo4").Range.AutoFilter Field:=7
  Range("B2").Select
End Sub

Çok teşekkür ediyorum, elinize sağlık bu kez çok güzel olmuş.
Cevapla
#6
Rica ederiz, iyi çalışmalar.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task