Soru Belirli sütunlardaki satırların makro ile silinmesi

Katılım
21 Eylül 2018
Mesajlar
87
Excel Vers. ve Dili
2010/Türkçe
Altın Üyelik Bitiş Tarihi
21/09/2023
Merhaba,
Örnek dosyamda da belirttiğim gibi A sütunundaki isimlerden silme işlemi yaptığımda C ve F arasındaki satırın 4 hücrenin silinmesini yani mause ile sağ tuş yapıp sildiğimizde ki "Hücreleri yukarı sürükle" yönteminde olduğu gibi istiyorum. Yardım eder misiniz lütfen!
 

Ekli dosyalar

Muhammet Okumuş

Destek Ekibi
Destek Ekibi
Katılım
28 Eylül 2007
Mesajlar
4,025
Excel Vers. ve Dili
2013 Türkçe
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Range("A:A"), Target) Is Nothing Then Exit Sub
r = Target.Row
Range("C" & r & ":F" & r).Delete xlUp
End Sub
Kodu deneyiniz.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,493
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Aşağıdaki kodlar C sütununda çift tıklandığında silme işlemini yapar.
Size uygunsa deneyiniz.
Kodlar ilgili sayfanın kod bölümünde olmalı.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    Dim Evt As String
   
    If Intersect(Target, [C:C]) Is Nothing Or Target.Value = "" Then Exit Sub
   
    If MsgBox(Cells(Target.Row, "C") & " SİLİNECEK, EMİN MİSİNİZ?", vbYesNo, "VERİ SİLME") = vbYes Then
        Range("C" & Target.Row & ":F" & Target.Row).Delete Shift:=xlUp
        ActiveCell.Activate
    End If
   
End Sub
 
Katılım
21 Eylül 2018
Mesajlar
87
Excel Vers. ve Dili
2010/Türkçe
Altın Üyelik Bitiş Tarihi
21/09/2023
Muhammet Hocam öncelikle ilginiz için teşekkür ederim. Kusura bakmayın C sütunu diyecektim. Şu halde de A sütunundaki hücrelere tıkladığımda satırları siliyor. Halbuki C sütununda isim silersem yapması gerekiyor.
 
Katılım
21 Eylül 2018
Mesajlar
87
Excel Vers. ve Dili
2010/Türkçe
Altın Üyelik Bitiş Tarihi
21/09/2023
Merhaba,

Aşağıdaki kodlar C sütununda çift tıklandığında silme işlemini yapar.
Size uygunsa deneyiniz.
Kodlar ilgili sayfanın kod bölümünde olmalı.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    Dim Evt As String
  
    If Intersect(Target, [C:C]) Is Nothing Or Target.Value = "" Then Exit Sub
  
    If MsgBox(Cells(Target.Row, "C") & " SİLİNECEK, EMİN MİSİNİZ?", vbYesNo, "VERİ SİLME") = vbYes Then
        Range("C" & Target.Row & ":F" & Target.Row).Delete Shift:=xlUp
        ActiveCell.Activate
    End If
  
End Sub
Necdet Hocam ilginiz için teşekkür ederim. Ben C sütununda isim silersem C ve F arasında "Hücreleri Yukarı Sürükle" yönteminde olduğu gibi silmesini istiyorum.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,493
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,
Deneyiniz. Kodlar ilgili sayfanın kod bölümünde olmalı. C sütununda bir değeri sildiğinizde (Çoklu silme kontrol edilmedi) kodlar çalışır.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim Evt As String
  
    If Intersect(Target, [C:C]) Is Nothing Or Target.Row < 4 Or Target.Value <> "" Then Exit Sub
    
    Application.EnableEvents = False
    Range("C" & Target.Row & ":F" & Target.Row).Delete Shift:=xlUp
    Application.EnableEvents = True
    
End Sub
 
Üst