• DİKKAT

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

Şartlı Sil Makrosu

Katılım
8 Aralık 2005
Mesajlar
93
Excel Vers. ve Dili
Microsoft® Excel 2007 Tr
Merhaba;
Soruma ait örenke kitap ekliyorum
j:j sütünunda bulunan değerlerden bir tanesini seçtiğimde o değerin olduğu tüm satırlar silinsin istiyorum.

Makro çalıştırıldığında bana sormalı hangi değeri içeren satırı sileyim diye
ben değeri girince o satırlar silinmeli.

mesela 1. ve 2. satırların J;j değeri c

makro kodu çalıştığında ben c değerini girince 1. ve 2. satırlar silinsin istiyorum.

j:j satırında 10-15 tane değer var değişken

şimdiden teşekkürler.
 

Ekli dosyalar

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For b = [b65536].End(3).Row To 1 Step -1
If WorksheetFunction.CountIf(Range("b1:b" & b), Cells(b, "b")) > 1 Then Rows(b).Delete
Next
End Sub



ben bunu aynı değer ikinci defa girilirse o satırı komple siliyor bunun için epeydir kullanıyorum burdan yapabilirsen yap
 
Merhaba;
Soruma ait örenke kitap ekliyorum
j:j sütünunda bulunan değerlerden bir tanesini seçtiğimde o değerin olduğu tüm satırlar silinsin istiyorum.

Makro çalıştırıldığında bana sormalı hangi değeri içeren satırı sileyim diye
ben değeri girince o satırlar silinmeli.

mesela 1. ve 2. satırların J;j değeri c

makro kodu çalıştığında ben c değerini girince 1. ve 2. satırlar silinsin istiyorum.

j:j satırında 10-15 tane değer var değişken

şimdiden teşekkürler.


Ekteki örneği inceleyin. Makronun çalışması için tablodaki rakamlardan herhangi biri üzerinde çift tıklayın, gelen kutuya silmek istediğiniz satırın J sütununda ne yazıyorsa aynen girip OK tıklayın.
Kolay Gelsin
 

Ekli dosyalar

Sayın bedri teşekkürler.
Sayın musty ilginiz için teşekkürler.

Sub SİL()
Dim X As Long

Application.ScreenUpdating = False

For X = Range("J1500").End(3).Row To 1 Step -1
If InStr(1, Cells(X, 10), "V", vbTextCompare) > 0 Then Rows(X).Delete
Next

For X = Range("J1500").End(3).Row To 1 Step -1
If InStr(1, Cells(X, 10), "C", vbTextCompare) > 0 Then Rows(X).Delete
Next

For X = Range("J1500").End(3).Row To 1 Step -1
If InStr(1, Cells(X, 10), "F", vbTextCompare) > 0 Then Rows(X).Delete
Next

Application.ScreenUpdating = True

MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub

şeklinde çözdüm olayı
 
Geri
Üst