• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Hücredeki veriyi silmek

  • Konbuyu başlatan Konbuyu başlatan ormann
  • Başlangıç tarihi Başlangıç tarihi
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
A1 veya A2 hücrelerinden birine veri girdiğim zaman A3 hücresindeki veri makro ile otamatik olarak silinmeli ayrıca A3 hücresine ise veri girildiğinde a1 ve a2 hücreleri otamatik olarak silinmesi gerekiyor.Yardımcı olurmusunuz?.Saygılar sunuyorum.İyi akşamlar
 
Merhaba,

Çalışma sayfasının kod bölümüne kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
 
    If Intersect(Target, [A1:A3]) Is Nothing Then Exit Sub
    
    On Error GoTo Son
    Application.EnableEvents = False
    If Target.Row < 3 Then
        Range("A3").ClearContents
    Else
        Range("A1:A2").ClearContents
    End If
    Application.EnableEvents = True
Son:
 
End Sub
.
 
Ömer bey birleştirilmiş hücrede çalışmadı ?
a1 b1 birleşmiş hücre
a2 b2 " "
a3 b3 " "
 
Kodun birleştirilmiş hücrede çalışması için ne yapmalıyız?
 
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, [A1:B3]) Is Nothing Then Exit Sub

On Error GoTo Son
Application.EnableEvents = False
If Target.Row < 3 Then
Range("A3:B3").ClearContents
Else
Range("A1:B2").ClearContents
End If
Application.EnableEvents = True
Son:

End Sub
 
Arkadaşlar makroyu kendi dosyama uyarlamaya çalıştım.Fakat e7 ve e8 hücrelerine veri girdiğimde e9 silineceği yerde e7 ve e8 hücreleri siliniyor.
 

Ekli dosyalar

Şu şekilde bir deneyiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$a$1" Or [a1] > 0 Then [a3] = "": Exit Sub
If Target.Address = "$a$2" Or [a2] > 0 Then [a3] = "": Exit Sub
If Target.Address = "$a$3" Or [a2] > 0 Then [a1:a2] = "": Exit Sub
End Sub
 
Seyit bey kod çok yavaş çalışıyor.Kasma yapıyor
 
Aşağıdaki kodu, verilen kodların üstüne yapıştırıp deneyiniz.
Kod:
Application.EnableEvents = False
Kasma donanımla da ilgisi var.
 
Dediğinizi yaptım fakat hiçbir işlem olmadı.
 
Bu şekilde deneyin.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
 
    If Intersect(Target, [E7:E9]) Is Nothing Then Exit Sub
    
    On Error GoTo Son
    Application.EnableEvents = False
    If Target.Row < 9 Then
        Range("E9") = ""
    Else
        Range("E7:E8") = ""
    End If
    Application.EnableEvents = True
Son:
 
End Sub

.
 
Teşekkürler Ömer bey
 
Geri
Üst