Satır silen makro kodu

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
455
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
Merhaba Arkadaşlar

Bir çalışmada araç olarak kullanmak için şöyle bir makro koduna ihtiyacım var. Yardımcı olabilirseniz sevinirim.

Örneğin ben bulunduğum bir sayfadan 5 satırı sürekli silmek istiyorum. Ben bodu çalıştırınca 5 satır silinecek. Ancak silme işlemine başlarken hangi satırdan başlayacağını ve kaçar kaçar silineceğini kod da belirtebilmeliyim. Yani bu iki değer başlangıçda benim belirleyeceğim değişkenler olmalı. Yalnız burada en önemli nokta, her silme işlemine bir alttaki satırdan başlamalı. Amaç belli aralıklardaki bazı satırları üst üste oturtmak. Örnek dosya ekledim. Sanırım orada daha iyi anlaşılacaktır.

Hayırlı günler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,608
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki kodu denermisiniz.

Kod:
Sub SATIR_SİL()
    Dim X As Long
    Application.ScreenUpdating = False
    İLK = Application.InputBox("LÜTFEN İLK SATIR BİLGİSİNİ GİRİNİZ...", "İLK SATIR", "1")
    SON = Application.InputBox("LÜTFEN SON SATIR BİLGİSİNİ GİRİNİZ...", "SON SATIR", "65536")
    ADIM = Application.InputBox("İŞLEM KAÇ ADIMDA BİR TEKRARLANSIN...", "ADIM SAYISI", "1")
    If İLK = "" Or SON = "" Or ADIM = "" Then GoTo HATA
    İLK = İLK * 1
    SON = SON * 1
    ADIM = ADIM * 1
    For X = İLK To SON Step ADIM
    If X > SON Then GoTo İŞLEM_SONU
    Rows(İLK & ":" & İLK + ADIM - 1).Select
    Selection.Delete
    İLK = İLK + 1
    Next
    [A1].Select
İŞLEM_SONU:
    MsgBox "İŞLEMİNİZ TAMAMLANMIŞTIR.", vbInformation
    Exit Sub
HATA:
    MsgBox "EKSİK YADA HATALI VERİ GİRİŞİ TESBİT EDİLMİŞTİR." & Chr(10) & "LÜTFEN GİRDİĞİNİZ BİLGİLERİ KONTROL EDİNİZ.", vbCritical, "DİKKAT !"
    Application.ScreenUpdating = True
End Sub
 
Son düzenleme:

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
455
Excel Vers. ve Dili
2010 Tr
Altın Üyelik Bitiş Tarihi
12-10-2028
Söylenecek söz yok. Daha iyisi olamazdı.
Elinize, zihninize sağlık. Teşekkürler.
 
Katılım
9 Nisan 2005
Mesajlar
158
Merhaba ,
Benimde bir sorum olacak.Bende tablomun üstünde kalan satırları silmek istiyorum.Ama tablomun başlangıç satırı sabit değil , değişken olacak.Yani silmek istediğim satırlar 1. satırdan N.( Tablonun ilk satırı ) satıra kadar.Bu durumda kodu nasıl yazmalıyım.Teşekkürler....
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,608
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Sizde örnek bir dosya eklerseniz üzerinden çözüme gidebiliriz.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,608
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Bu işlem için koda gerek yok. Sırasıyla aşağıdaki işlemleri yapınız.

Mouse ile 1. satırı komple seçip CTRL+SHIFT+AŞAĞI OK tuşlarına beraber basın. Daha sonra sadece CTRL tuşundan elinizi kaldırıp yukarı ok tuşuna bir defa basın ve tuşları bırakın. Böylece tablonuzun ilk satırından önceki satırları seçmiş olduk. Şimdi CTRL tuşu ile beraber - tuşuna basın seçmiş olduğunuz satırlar silinecektir.

Yok bu işlem karışık ben kod ile bu işlemi yapmak istiyorum derseniz. Aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub SATIR_SİL()
   If [A1] <> "" Then Exit Sub
   Rows("1:" & Range("A1").End(4).Row - 1).Select
   Selection.Delete
End Sub
 
Katılım
9 Nisan 2005
Mesajlar
158
Kod kullanarak yapmam gerekiyordu.zannediyorum bu işimi görücek.Teşekkürler...
 
Üst