• DİKKAT

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

İşime yaramayan satırların otomatik silinmesi

Katılım
24 Kasım 2011
Mesajlar
11
Excel Vers. ve Dili
excel 2003
Selamlar bana lazım olan şey ektede gönderdiğim gibi.

Cihaz bir ve Cihaz iki sütünlarının yeri sürekli standar ama satırların adeti ve içinde yazanlar sürekli değişiyor.

Bana lazım olan

Cihaz bir kısmında -X başlayan karşıgında rakamla yazılan ama sonunda harf olamayan sütünların silinmesi.

Örn. Cihaz bir kısmında -Xc31 yazıyor baglantı ucu 201 bunun silinmesini istıyorum.

Aynı şekılde cihaz iki kısmında -X le başlayıp baglantı ucu rakamla yazılanların silinmesini istıyorum

Örn.

Cihaz birde -XC31 Baglantı ucunda 201A yazıyor silinmeyecek.

Örn. Cihaz Bir kısmında -X... yazıyor. baglantı ucunda 202 yazıyor silinecek.

Cihaz İkide yazan rakam önemli degil ya Cihaz Bir yada Cihaz ikide Cihaz kısmı -X le başlacak BAglantı ucu Rakamla bitecek rakamın sonunda har olmayaak 701a 506e gib bitmeyenler silinecek mümkünmüdür.

Ama Saydaki sütün sayısı ve içeriğindeki rakamlar ve yazıyılar her proşede degışıyor.

Bu olayı yapmamız mümkünmü?

İş yerinde İşim çok hafifleyecek konuyla ilgili yardımlarınızı rica ederımm.
 

Ekli dosyalar

Merhaba,

Her iki şartın doğru olması mı gerekiyor yoksa şartlardan bir tanesi bile gerçekleşse satır silinecek mi?
 
Necdet bey selamlar

Ewet
Çunku bazen cihaz 2 kısmındada bu olay oluyor.

Örn. cihaz 2 kısmında -x.... baglantı ucunda 700 yazıyor ama baglantı ucdakı rakamlar surekli degışıyor ama cihaz kısmındaki -x ler hiç degişmiyor bu satırların silinmesi mümkünmüü

Bu olayı yaparsam işlerim çok hafıfleyecek.
 
Merhaba,

Yine açık olarak yanıtlamadınız sorumu. Ben her iki şart gerçekleşecek mi yoksa tek şart bile gerçekleşse satır silinecek mi diyorum siz evet diye yanıtlıyorsunuz.

Aşağıdaki kod hem cihaz1 deki şartı hem cihaz2 deki şartın doğru olması durumunda satırı siliyor.

Eğer siz şarttın biri bile gerçekleşse silmesini istiyorsanız koyu kırmızı ile belirlediğim sözcüğü yani (And) Or ile değiştiriniz.

Kodları bir Modüle kopyalayıp denemeden önce dosyanızın yedeğini alınız.


Kod:
Sub Satir_Sil()
 
    Dim i As Long
    Dim j As Long
 
    Application.ScreenUpdating = False
 
    For i = Cells(Rows.Count, "A").End(3).Row To 2 Step -1
        If (Cells(i, "G") Like "-X*" And IsNumeric(Cells(i, "H")) = True) [B][COLOR=red]And[/COLOR][/B] _
           (Cells(i, "K") Like "-X*" And IsNumeric(Cells(i, "L")) = True) Then
            Rows(i).Delete
            j = j + 1
        End If
    Next i
 
    Application.ScreenUpdating = True
 
    MsgBox "Şarta Uyan " & j & " Adet Satır Silindi....", vbInformation, "N. YEŞERTENER [URL="http://www.excel.web.tr/"]www.excel.web.tr[/URL]"
 
End Sub
 
Selamlar

Kusura bakmayın anlamadım ilk başta

Sadece şartlardan bir tanesi olsa yeterli oluyor.

AMa ben uyguladığım zaman içine ona benze sadece harfler ve rakamların değişik olduğu excel kopyadım sılmedı?

Siz bu olayı bir buton yapabilirmisiniz.?

Ben içine herhangı bır kablo listesşi yapıştırsam ve sadece butona bastıgım zaman silinmiş olarak karşıma çıksa olmazmı

Her dafasında aynı kodları yazmak zorunda kalmasan standar gonderdığim ekın ustunden yapsam olurmu?

Gerçekten sizide çok ugraştırıyorum ama inanın tam kullanmayı bılmıyorum exceli o yuzden istıyorum.
 
Merhaba,

Şöyle yapalım, siz dosyadaki butona tıklayın, T sütununa şarta uyan satırların silineceğine dair "silinecek" ibaresi yazacak. T sütununa göre Silineceklere göre süz yapın.

Silinecek satırlar doğru ise doğrudan sildirelim satırı.

Kod:
Sub Satir_Sil()
 
    Dim i As Long
    Dim j As Long
    Dim s As Long
 
    Application.ScreenUpdating = False
    Sheets("Sheet1").Select
    s = Cells(Rows.Count, "A").End(3).Row
    Range("T2:T" & s).ClearContents
    
    For i = s To 2 Step -1
        If (Cells(i, "G") Like "-X*" And IsNumeric(Cells(i, "H")) = True) Or _
           (Cells(i, "K") Like "-X*" And IsNumeric(Cells(i, "L")) = True) Then
'            Rows(i).Delete
            Cells(i, "T") = "Silinecek"
            j = j + 1
        End If
    Next i
 
    Application.ScreenUpdating = True
 
    MsgBox "Şarta Uyan " & j & " Adet Satır Silindi....", vbInformation, "N. YEŞERTENER [URL="http://www.excel.web.tr/"]www.excel.web.tr[/URL]"
 
End Sub
 

Ekli dosyalar

Ewet olay bu işte abıcım yaa

aynen böyle olacak ve hepsı dogru.

Süpersiniz siz ya ewet bunlar silinsin istıyorum.

Şimdi silebilir hepsını bu olayıda hallettım mi süper olacak banada yıne ekteki gibi son halını yollarmısınız.

Süpersiniz gerçekten yaa
 
Merhaba,

Son kodlar aşağıdaki gibidir.

Aslında bir önceki mesajımda açıklama olarak belirttiğim Row(i).Delete satırının açıklamasını kaldırdım ve ondan sonraki Cells(i, "T") = "Silinecek"
satırını sildim.

Kod:
Sub Satir_Sil()
     
    Dim i As Long
    Dim j As Long
    Dim s As Long
 
    Application.ScreenUpdating = False
    Sheets("Sheet1").Select
    s = Cells(Rows.Count, "A").End(3).Row
    Range("T2:T" & s).ClearContents
    
    For i = s To 2 Step -1
        If (Cells(i, "G") Like "-X*" And IsNumeric(Cells(i, "H")) = True) Or _
           (Cells(i, "K") Like "-X*" And IsNumeric(Cells(i, "L")) = True) Then
            Rows(i).Delete
            j = j + 1
        End If
    Next i
 
    Application.ScreenUpdating = True
 
    MsgBox "Şarta Uyan " & j & " Adet Satır Silindi....", vbInformation, "N. YEŞERTENER [URL="http://www.excel.web.tr/"]www.excel.web.tr[/URL]"
 
End Sub
 

Ekli dosyalar

selamlar

We siz gerçekten harikasınız ewet tam istediğim şekilde oldu ellerinize saglık.
 
evet =) oldumu şimdi =)
 
Geri
Üst