Satırı değil satırdaki veriyi silmek

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
871
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Private Sub CommandButton2_Click()
Sheets("veritabani").Select
For x = Cells(65536, 1).End(xlUp).Row To 2 Step -1
If Cells(x, 1) = ComboBox1.Text Then Rows(x).Delete
Next
End Sub


Bu kod ile seçtiğim satırdaki veriyi siliyorum.Ancak veri silindiğinde bu veriye bağlı diğer sayfalardaki formüller hata veriyor.
 

Korhan Ayhan

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

Kodunuzdaki "Delete" ifadesi yerine "ClearContents" yazarak denermisiniz.

Not: Bu komut satırın içeriğini silecektir. Ve satır boş kalacaktır.
 

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
871
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Sayın COSTCONTROL bu kezde tüm satırdaki verileri temizliyor .Teşekkürler birde Tüm satırı değilde örneğin A2:A43 aralığının temizlenmesi ve alttaki verinin bir üste geçmesi için nasıl bir değişklik yapmak lazım.
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
Private Sub CommandButton2_Click()
Sheets("veritabani").Select
For x = Cells(65536, 1).End(xlUp).Row To 2 Step -1
If Cells(x, 1) = ComboBox1.Text Then Rows(x).Delete
Next
End Sub
Sayın COSTCONTROL bu kezde tüm satırdaki verileri temizliyor .Teşekkürler birde Tüm satırı değilde örneğin A2:A43 aralığının temizlenmesi ve alttaki verinin bir üste geçmesi için nasıl bir değişklik yapmak lazım.
A2:A43 aralığı satırdaki değil sütundaki bir aralıktır; yani yukarıdan aşağıya 42 satır siliyorsunuz. Eğer satırda belli bir aralığı silmek isterseniz mesela A:G aralığını, aşağıdaki şekilde bir kod kullanabilirsiniz.
If Cells(x, 1) = ComboBox1.Text Then range( **aralık** ).clearcontents
 

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
871
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Sayın mesleki öncelikle özür ve Teşekkür.
Private Sub CommandButton2_Click()
Sheets("veritabani").Select
For x = Cells(65536, 1).End(xlUp).Row To Step - 1
If Cells(x, 1) = ComboBox1.Text Then Range("A2:AQ11").ClearContents
Next
End Sub
kodu şeklinde değiştirdim ancak çalışmıyor.
 

Korhan Ayhan

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

Bahsettiğiniz gibi sabit bir aralığı silmek istiyorsanız neden döngü kullanıyorsunuz buna anlam veremedim. Örnek bir dosya ekleyip ne yapmak istediğiniz açıklarsanız daha faydalı olacaktır.
 
Üst