TURKOLOG
Altın Üye
- Katılım
- 13 Kasım 2008
- Mesajlar
- 744
- Excel Vers. ve Dili
- 2016 64 TR
- Altın Üyelik Bitiş Tarihi
- 29-10-2026
Kod:
Private Sub Sil_Click()
Dim bul As Range
If ListBox1.ListCount = 0 Then Exit Sub
Set bul = Sheets("KONTROL").Range("P:P").Find(ListBox1.Value, LookAt:=xlWhole)
If Not bul Is Nothing Then
Sheets("KONTROL").Rows(bul.Row).Delete
End If
UserForm_Initialize
End Sub
Aşağıdaki kodla da listBox1'de seçilip textBox1 e getirilen kaydı Kontrol sayfası P2: P aralığında buluyor ama malesef :Kontrol sayfasında hangi satırda ise o satırın tamamını temizliyor.
Benim istediğim ise Temizle kodunu çalıştırınca listBox1'de seçilip textBox1 e getirilen kaydı Kontrol sayfası P2: P aralığında bulunması ve sadece P stütununda yazılı olduğu hücrenin temizlenmesi ve temizlenen hücrenin altında dolu hücreler varsa eğer dolu hücrelerin ilk boş hücreye kadar yukarı taşınması
örnek: P Sütununda 2. satırdan itibaren hcrelerin dolu olduğunu varsayarsak
P2 Ali
P3 Mehmet
P4 Şükrü
P5 Veli
P6 Ziya yazıyorsa ve Mehmet yazılı hücre temizlenecekse
işlemden sonraki yeni hali Ama satırlar silinmeyecek çünkü her satırda farklı veri var
P2 Ali
P3 Şükrü
P4 Veli
P5 Ziya
YARDIMCI OLABİLECEK OLAN VARSA ÇOK SEVİNİRİM
Kod:
Private Sub Temizle_Click()
Dim bul As Range
If ListBox1.ListCount = 0 Then Exit Sub
Set bul = Sheets("KONTROL").Range("P:P").Find(ListBox1.Value, LookAt:=xlWhole)
If Not bul Is Nothing Then
Sheets("KONTROL").Rows(bul.Row).Clear
End If
UserForm_Initialize
End Sub