Koşullu biçimlendirme

Katılım
30 Nisan 2008
Mesajlar
73
Excel Vers. ve Dili
2007 tr
Merhaba

Normalde formüllü olan bir hücreye, elle müdahale yapılıp rakam girildiğinde hücreyi boyamak mümkün mü? "Hücre formüllü değilse" gibi bir koşullu biçimlendirme seçeneği var mı?

Teşekkürler
 

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
Yanıt

Formül olmayan hücreleri boyar
Kod:
Sub TEST()
Dim SAT, SUT As Byte
For SAT = 1 To 10
For SUT = 1 To 5
Cells(SAT, SUT).Interior.ColorIndex = xlNone
If Not Cells(SAT, SUT).HasFormula Then
Cells(SAT, SUT).Interior.ColorIndex = 6
End If
Next
Next
End Sub
 
Katılım
30 Nisan 2008
Mesajlar
73
Excel Vers. ve Dili
2007 tr
Çok teşekkür ederim Ziya Bey; sanırım makrodan başka yolu yok; yani hücre içinde koşullu biçimlendirme ile halledilemiyor.
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki şekilde dener misiniz?
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Target.HasFormula Then
    Target.Interior.Color = vbRed
    Else
    Target.Interior.Color = xlNone
    End If
End Sub
 
Katılım
9 Mayıs 2005
Mesajlar
366
Excel Vers. ve Dili
Excel 2007 - Türkçe
Altın Üyelik Bitiş Tarihi
16-09-2021
Aşağıdaki şekilde dener misiniz?
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Target.HasFormula Then
    Target.Interior.Color = vbRed
    Else
    Target.Interior.Color = xlNone
    End If
End Sub

çok güzel bir paylaşım geniş tablolarda hangi satırlara müdahale edildiği görmek ve takip açısından teşekkürler üstad.. :)
 

Korhan Ayhan

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

Alternatif olarak iki farklı çözüm hazırladım.

ÖRNEK_1 isimli dosyada veri doğrulama ile yapılmış çözümü bulabilirsiniz.

ÖRNEK_2 isimli dosyada ise makrolu ile hazırlanmış çözümü bulabilirsiniz.


ÖRNEK_2 isimli dosyada kullanılan kod;

Kod:
Option Explicit
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim RENK As Integer
    If Target.Count > 1 Then Exit Sub
    RENK = Target.Interior.ColorIndex
    If Target.HasFormula Then
    Target.Interior.ColorIndex = 3
    MsgBox "Seçtiğiniz hücrede formül bulunmaktadır !", vbCritical, "Dikkat !"
    Target.Interior.ColorIndex = RENK
    End If
End Sub
 

Ekli dosyalar

Üst