Hücre silme

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,333
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
İlk mesajınızda ki talebinizde bu yöndeydi.

........Makro ile sadece rakam girilen hücrelerin silinmesini yapabilirmiyiz.
Aşağıdaki gibi deneyebilirsiniz. Kırmızı renkli metin+sayı olan hücrelerin içeriğini siler.

C++:
Option Explicit

Sub Hucreleri_Temizle()
    Dim Veri As Range
   
    Application.ScreenUpdating = False
   
    For Each Veri In Range("A1:AA" & Cells(Rows.Count, 1).End(3).Row)
        If Not IsError(Veri) Then
            If Veri.Value <> "" Then
                If Not Veri.HasFormula Then
                    If Veri.Font.ColorIndex = 3 Then
                        Veri.MergeArea.ClearContents
                    End If
                End If
            End If
        End If
    Next
   
    Application.ScreenUpdating = True
   
    MsgBox "Hücreler temizlenmiştir.", vbInformation
End Sub
 
Katılım
27 Ocak 2005
Mesajlar
88
Excel Vers. ve Dili
Excel 2010 TR
Altın Üyelik Bitiş Tarihi
25/04/2023
Korhan bey,
Range("b1,g1,b8:b51,b58,g58,b68:108") .Select
Selection.ClearContents gibi biraz uzun yoldan çözüme ulaştım.
Uğraşlarınıza teşekkür ederim.
 
Katılım
27 Ocak 2005
Mesajlar
88
Excel Vers. ve Dili
Excel 2010 TR
Altın Üyelik Bitiş Tarihi
25/04/2023
Koray bey, sizide uğraştırdım emeğinize sağlık kolay yoldan sorunu çözdünüz.
Çok teşekkür ediyorum.
İyi çalışmalar.
Herşey gönlünüzce olsun.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,647
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub kirmiziFontluVeSayilariTemizle()
    Application.ScreenUpdating = False
    Dim huc As Range
    With Range("A1:AA1200")
        .SpecialCells(xlCellTypeBlanks).Cells(1) = 1
        .SpecialCells(xlCellTypeConstants, 1).ClearContents
        For Each huc In .SpecialCells(xlCellTypeConstants, 2)
            If huc.Font.Color = vbRed Or (huc.Value <> "" And IsNumeric(huc.Value)) Then
                    huc.MergeArea.ClearContents
             End If
        Next huc
    End With
    Application.ScreenUpdating = True
End Sub

Sub kirmiziFontluHucreleriTemizle()
    Application.ScreenUpdating = False
    Dim huc As Range
    With Range("A1:AA1200")
        For Each huc In .SpecialCells(xlCellTypeConstants, 3)
            If huc.Font.Color = vbRed Then
                    huc.MergeArea.ClearContents
             End If
        Next huc
    End With
    Application.ScreenUpdating = True
End Sub
1. kod çalıştıktan sonra sayfada kalan dolu hücre 8269
2. kod çalıştıktan sonra sayfada kalan dolu hücre 8272 (M17, N1109:N1110 font rengi kırmızı yapılmamış).
 
Katılım
27 Ocak 2005
Mesajlar
88
Excel Vers. ve Dili
Excel 2010 TR
Altın Üyelik Bitiş Tarihi
25/04/2023
Sayın Veyselemre,
cevabınızı bu gün gördüm çok teşekkür ederim ilginize.
Sorunu daha önce verdiğiniz kodlarla çözdüm. teşekkür ederim.,
İyi çalışmalar
 
Üst