Listboxta seçilen veriyi sayfada sütun başlığında ara bul ve sütun başlığı hariç sütun içeriğini sil

Katılım
19 Eylül 2012
Mesajlar
322
Excel Vers. ve Dili
2010 türkçe
Sayın hocalarım listbox üzerinde seçili veriyi sayfada aratıp satırda bulduğum zaman satırın ilgili sütunlardaki hücrelerini silebiliyorum. Ancak, listboxta seçtiğim veriyi sütun başlıklarında aratıp verinin bulunduğu sütunun (sütun başlığı hariç) içeriğini komple silmek istiyorum. Bununla ilgili örnek dosya paylaştım yardımcı olursanız çok mutlu olurum. Alaka gösterecek hocalarıma şimdiden teşekkür ederim.


ÖRNEK DOSYA
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Buyurun.:cool:
Kod:
Private Sub CommandButton2_Click() 'SÜTUNDA ARA VE SİL
Dim bul As Range
Set bul = Sheets("Sayfa1").Range("E3:N2").Find(ListBox2.Value, , xlValues, xlWhole)
If Not bul Is Nothing Then
    Sheets("Sayfa1").Range(Sheets("Sayfa1").Cells(3, bul.Column), Sheets("Sayfa1").Cells(22, bul.Column)).ClearContents
End If
End Sub
 
Katılım
19 Eylül 2012
Mesajlar
322
Excel Vers. ve Dili
2010 türkçe
Değerli hocam çok çok teşekkür ederim eksik olmayın. Peki Listbox1'de yer alan makroyu daha kısa hale getirebilir miyiz?

Aşağıda yer alan makroyu kısaltarak yapmak istenilen işlemi E ve N sütununa kadar olan sütunlar için tek makro satırıyla yapabilir miyiz?

Private Sub CommandButton1_Click() 'SATIRDA ARA VE SİL
On Error Resume Next
Set bul = Sheets("Sayfa1").Range("D3:D22").Find(ListBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
adres = bul.Address
Do
Sheets("Sayfa1").Cells(bul.Row, "E") = Delete
Sheets("Sayfa1").Cells(bul.Row, "F") = Delete
Sheets("Sayfa1").Cells(bul.Row, "G") = Delete
Sheets("Sayfa1").Cells(bul.Row, "H") = Delete
Sheets("Sayfa1").Cells(bul.Row, "I") = Delete
Sheets("Sayfa1").Cells(bul.Row, "J") = Delete
Sheets("Sayfa1").Cells(bul.Row, "K") = Delete
Sheets("Sayfa1").Cells(bul.Row, "L") = Delete
Sheets("Sayfa1").Cells(bul.Row, "M") = Delete
Sheets("Sayfa1").Cells(bul.Row, "N") = Delete
Set bul = Sheets("Sayfa1").Range("D3:D22").FindNext(bul)
Loop While Not bul Is Nothing And bul.Address <> adres
End If
End Sub

Örneğin "E:N" gibi
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Buyurun..:cool:
https://dosya.co/qe4s5d90a1up/ÖRNEK59.xlsm.html
Kod:
Private Sub CommandButton1_Click() 'SATIRDA ARA VE SİL
Dim k As Range
Set bul = Sheets("Sayfa1").Range("D3:D22").Find(ListBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
Sheets("Sayfa1").Range("E" & bul.Row & ":N" & bul.Row).Clear
End If
End Sub
 
Son düzenleme:

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
#5 numalı tag da tekrar düzenledim.Önceki hatalı idi
 
Üst