OTOMATİK HÜCRE RENKLENDİRME

Katılım
27 Mayıs 2017
Mesajlar
185
Excel Vers. ve Dili
2010 xls
2016 xls
Merhaba arkadaşlar formumuz yenilenmiş hepimize hayırlı olsun umarım yenileneli bir kaç gün olmuştur :) uzun sayılacak kadardır forumdan uzaktım. Neyse
basit bir sorunum var .Sayfa 1 de yıl ve ayı seçtikten sonra renklenen hücrelerin diğer sayflarda da denk düşecek şekilde renklenmesi örnek dosya ekte mevcuttur.Emeği geçen herkese teşekkürler
 

Ekli dosyalar

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,196
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Sayfa1 A2:G6:
Kod:
=HAFTANINGÜNÜ(A2&"."&$D$1&"."&$A$1;2)=7

Sayfa2 ve Sayfa3 A1:AE1:
Kod:
=HAFTANINGÜNÜ(A1&"."&Sayfa1!$D$1&"."&Sayfa1!$A$1;2)=7
Aralıklarına koşullu biçimlendirme için yukarıdaki formülleri yazarak deneyin.

.
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Veri Sayfasındaki ayların yanına 1 den 12 ye kadar rakam yazın. Yani ayın sayısal ifadesi.
Sayfa1 de H1 sütununa DÜŞEYARA(D1;VERİ!B1:D12;2;0) formülünü yazarak seçilen ayın rakamsal değerini alın. Makro yardımı ile yapmak için aşağıdaki kodları bir butona ekleyin.
Kod:
Sub askm()
Dim s1 As Worksheet
Dim s2 As Worksheet
Dim s3 As Worksheet
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
Set s3 = Sheets("Sayfa3")
Application.ScreenUpdating = False
yil = s1.Cells(1, 1)
ay = s1.Cells(1, "H")
s1.Cells.Interior.Color = xlNone
s2.Cells.Interior.Color = xlNone
s3.Cells.Interior.Color = xlNone
For x = 2 To 6
    For y = 1 To 7
        gün = s1.Cells(x, y)
        tarih = DateSerial(yil, ay, gün)
        tatil = Weekday(tarih, 1)
        If tatil = 1 Then
            s1.Cells(x, y).Interior.Color = vbYellow
        End If
    Next y
Next x
For i = 1 To 31
    tatil2 = Weekday(DateSerial(yil, ay, s2.Cells(1, i)), 1)
    If tatil2 = 1 Then
        s2.Cells(1, i).Interior.Color = vbYellow
        s3.Cells(1, i).Interior.Color = vbYellow
    End If
Next i
Application.ScreenUpdating = True
MsgBox "İşlem tamam...", vbInformation, "ASKM"
End Sub
 
Katılım
27 Mayıs 2017
Mesajlar
185
Excel Vers. ve Dili
2010 xls
2016 xls
Veri Sayfasındaki ayların yanına 1 den 12 ye kadar rakam yazın. Yani ayın sayısal ifadesi.
Sayfa1 de H1 sütununa DÜŞEYARA(D1;VERİ!B1:D12;2;0) formülünü yazarak seçilen ayın rakamsal değerini alın. Makro yardımı ile yapmak için aşağıdaki kodları bir butona ekleyin.
Kod:
Sub askm()
Dim s1 As Worksheet
Dim s2 As Worksheet
Dim s3 As Worksheet
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
Set s3 = Sheets("Sayfa3")
Application.ScreenUpdating = False
yil = s1.Cells(1, 1)
ay = s1.Cells(1, "H")
s1.Cells.Interior.Color = xlNone
s2.Cells.Interior.Color = xlNone
s3.Cells.Interior.Color = xlNone
For x = 2 To 6
    For y = 1 To 7
        gün = s1.Cells(x, y)
        tarih = DateSerial(yil, ay, gün)
        tatil = Weekday(tarih, 1)
        If tatil = 1 Then
            s1.Cells(x, y).Interior.Color = vbYellow
        End If
    Next y
Next x
For i = 1 To 31
    tatil2 = Weekday(DateSerial(yil, ay, s2.Cells(1, i)), 1)
    If tatil2 = 1 Then
        s2.Cells(1, i).Interior.Color = vbYellow
        s3.Cells(1, i).Interior.Color = vbYellow
    End If
Next i
Application.ScreenUpdating = True
MsgBox "İşlem tamam...", vbInformation, "ASKM"
End Sub
Merhaba hocam formülünüz için teşekkür ederim fakat dikkatimi birşey çekti makroyu çalıştırırken haziran 30 gün olmasına rağmen gün sabit bir şekilde 31 olarak kalıyor şubatta vs. de aynı şekilde.Birde örneğin haziran 30 gün olmasına rağmen 31 gün görünüyor ve 31.gün de normal şartlarda haziran 31 gün olmuş olsa pazar olacağı için o da renk alıyor.Ben formülünüzü uyarladım size zahmet bir göz atarsanız çok sevinirim.Şimdiden teşekkürler :)
 

Ekli dosyalar

Üst