Yanıp Sönen Hücre Makrosu

Katılım
13 Ekim 2016
Mesajlar
30
Excel Vers. ve Dili
Microsoft excel 2010
Arkadaşlar Merhaba,


G2:G65000 arasında bir fomülüm var ve burda ''S2:S65000'' arasındaki tarih bugünden küçükse ''G'' Sutününda ZAMAN DOLDU yazıyor ben bu ZAMAN DOLDU yazan satırların yanıp sönmesini ikaz niteliğinde haber vermesini istiyorum. Kısaca G Sütününda ZAMAN DOLDU görünüyorsa hücre YANIP sönsün. Yardımcı olursanız sevinirim,
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,609
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Daha önce paylaşılan örneklere linklerden erişebilirsiniz.

 
Katılım
13 Ekim 2016
Mesajlar
30
Excel Vers. ve Dili
Microsoft excel 2010
Korhan Bey Merhaba,

Vermiş olduğunuz tüm linklere baktım fakat uyarlayamadım. bu yüzden kendi sorunumu paylaştım.

Aşağıdaki Şekilde,

G2:G65000 arasında bir fomülüm var formülüm S sutununa girilen tarihden uyarlandı. ''S2:S65000'' arasındaki tarih bugünden küçükse ''G'' Sutününda ZAMAN DOLDU yazıyor ben bu ZAMAN DOLDU yazan satırların yanıp sönmesini ikaz niteliğinde haber vermesini istiyorum. Kısaca G Sütününda ZAMAN DOLDU görünüyorsa hücre YANIP sönsün istiyorum.

Yardımlarınız için şimdiden teşekkür ederim.
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Sayfanın kod bölümüne kopyalayın
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$G$2" <> Empty Then deneme
End Sub
Makro kodu
Kod:
Sub deneme()
For k = 1 To 100
If Range("G2").Value = "ZAMAN DOLDU" Then

Cells(2, 7).Interior.ColorIndex = 6
                  basla = Timer
                  bekle = 1
                  While Timer < basla + bekle
                  DoEvents
                  Wend
Cells(2, 7).Interior.ColorIndex = xlNone
                     basla = Timer
                  bekle = 1
                  While Timer < basla + bekle
                  DoEvents
                  Wend
Else
    Range("G2").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
End If
                  
Next k

End Sub
Örnek dosyanız
 
Katılım
13 Ekim 2016
Mesajlar
30
Excel Vers. ve Dili
Microsoft excel 2010
Recep bey ,

Öncelikle çok sağolun emeğinize sağlık,

Vermiş olduğunuz kod sadece G2 için düşünülmüş Ben G sütününda oluşacak tüm ZAMAN DOLDU lar için bu işlemin gerçekleşmesini sağlamak istiyorum tekrar düzenleme yapabilirseniz sevinirim. (Siyah puntolanan alanların tüm G2 den G65000 e kadar düzenlenmesi gerekiyor ve her ZAMAN DOLDU olanları yanıp söner hale getirip ikaz vermesi . yardımlarınız için şimdiden teşekkür ederim.

Sayfanın Kod Bölümü

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$2" <> Empty Then deneme
End Sub


Modül Bölümü

If Range("G2").Value = "ZAMAN DOLDU" Then

Cells(2, 7).Interior.ColorIndex = 6
basla = Timer
bekle = 1
While Timer < basla + bekle
DoEvents
Wend
Cells(2, 7).Interior.ColorIndex = xlNone
basla = Timer
bekle = 1
While Timer < basla + bekle
DoEvents
Wend
Else
Range("G2").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If

Next k

End Sub
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba
Denerseniz ekte alternatif dosya bulunuyor
Kodlar "modül"-"Buçalışmakitabı(Thisworkbook)"-"Sayfa1" kod pencerelerindedir
https://www.dosyaupload.com/rVfL
"Modül1"
Kod:
Private rt As Date
Sub renk()
Set s1 = Sheets("Sayfa1")
x = s1.Cells(Rows.Count, "G").End(3).Row
With s1.Range("G1:G" & x)
    Set c = .Find("ZAMAN DOLDU", LookIn:=xlValues)
    If Not c Is Nothing Then
f = c.Address
  Do
If s1.Range(c.Address).Interior.ColorIndex = 3 Then
s1.Range(c.Address).Interior.ColorIndex = xlNone
Else
s1.Range(c.Address).Interior.ColorIndex = 3
End If
Set c = .FindNext(c)
If c Is Nothing Then Exit Do
        Loop While Not c Is Nothing And c.Address <> f
    End If
End With
rt = Now + TimeSerial(0, 0, 1)
Application.OnTime rt, "renk", , True

End Sub
Sub DUR()
On Error Resume Next
Application.OnTime rt, "renk", , False
End Sub
"Buçalışmakitabı(thisworkbook)
Kod:
Private Sub Workbook_Open()
If ActiveSheet.Name = "Sayfa1" Then Call renk
End Sub
"Sayfa1"
Kod:
Private Sub Worksheet_Activate()
Call renk
End Sub


Private Sub Worksheet_Deactivate()
Call DUR
End Sub
 
Son düzenleme:
Katılım
13 Ekim 2016
Mesajlar
30
Excel Vers. ve Dili
Microsoft excel 2010
Merhaba
Denerseniz ekte alternatif dosya bulunuyor
Kodlar "modül"-"Buçalışmakitabı(Thisworkbook)"-"Sayfa1" kod pencerelerindedir
https://www.dosyaupload.com/rVfL
"Modül1"
Kod:
Private rt As Date
Sub renk()
Set s1 = Sheets("Sayfa1")
x = s1.Cells(Rows.Count, "G").End(3).Row
With s1.Range("G1:G" & x)
    Set c = .Find("ZAMAN DOLDU", LookIn:=xlValues)
    If Not c Is Nothing Then
f = c.Address
  Do
If s1.Range(c.Address).Interior.ColorIndex = 3 Then
s1.Range(c.Address).Interior.ColorIndex = xlNone
Else
s1.Range(c.Address).Interior.ColorIndex = 3
End If
Set c = .FindNext(c)
If c Is Nothing Then Exit Do
        Loop While Not c Is Nothing And c.Address <> f
    End If
End With
rt = Now + TimeSerial(0, 0, 1)
Application.OnTime rt, "renk", , True

End Sub
Sub DUR()
On Error Resume Next
Application.OnTime rt, "renk", , False
End Sub
"Buçalışmakitabı(thisworkbook)
Kod:
Private Sub Workbook_Open()
If ActiveSheet.Name = "Sayfa1" Then Call renk
End Sub
"Sayfa1"
Kod:
Private Sub Worksheet_Activate()
Call renk
End Sub


Private Sub Worksheet_Deactivate()
Call DUR
End Sub
Çok Teşekkürler bu işimi çözdü
 
Üst