• DİKKAT

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

Soru Tarihleri kırmızı renk ve kalın yapmak

  • Konbuyu başlatan Konbuyu başlatan Szg15
  • Başlangıç tarihi Başlangıç tarihi
Katılım
27 Ekim 2017
Mesajlar
59
Excel Vers. ve Dili
2010 turkce
Merhabalar. Sayfa1'in I3 sütunundan itibaren aşağıya doğru, Sayfa2'nin Q3 sütunundan itibaren aşağıya doğru, tarih bilgileri var. (dd.mm.yyyy formatında)

Sayfa 1'in I3:I ve Sayfa 2'nin Q3:Q aralığındaki tarih, yarının tarihi ise kırmızı renk ve kalın yapmaya çalışıyorum. Eğer bugün Cuma günü ise ve o aralıkta yarın (Cumartesi), ertesi gün (Pazar) ve bir ertesi gün (Pazartesi) tarihleri var ise onları da kırmızı renk ve kalın yapmalı.

Örnek:
Bugün 02 Ocak 2021 Cumartesi.
Eğer aralıktaki tarih 03 Ocak 2021 Pazar ise, o hücredeki tarihi kırmızı renk ve kalın yapsın, 04 Ocak 2021 Pazartesi ise yine tarihi kırmızı renk ve kalın yapsın. 05 Ocak 2021 Salı ise aynen kalsın.

Bugün 04 Ocak 2021 Pazartesi diyelim. Eğer aralıktaki tarih 05 Ocak 2021 Salı ise kırmızı renk ve kalın yapsın, 06 Ocak 2021 Çarşamba ise aynen kalsın.

Bu işlem koşullu biçimlendirme ile değil de, kodlar ile yapılabilir mi?
 
Merhaba,
Evet, yapılabilir. Sayfa1 için aşağıdaki kodu deneyiniz...
Kod:
Sub kod()
s = Sheets("Sayfa1").Cells(Rows.Count, "I").End(3).Row
For Each hcr In Sheets("Sayfa1").Range("I3:I" & s)
    If hcr.Value >= Date + 1 And hcr.Value <= Application.WorkDay(Date, 1) Then
        hcr.Font.Color = vbRed
        hcr.Font.Bold = True
    End If
Next
End Sub
 
Merhaba,
Evet, yapılabilir. Sayfa1 için aşağıdaki kodu deneyiniz...
Kod:
Sub kod()
s = Sheets("Sayfa1").Cells(Rows.Count, "I").End(3).Row
For Each hcr In Sheets("Sayfa1").Range("I3:I" & s)
    If hcr.Value >= Date + 1 And hcr.Value <= Application.WorkDay(Date, 1) Then
        hcr.Font.Color = vbRed
        hcr.Font.Bold = True
    End If
Next
End Sub

Teşekkür ederim Ömer Bey, çalışıyor, elinize sağlık. Bu makroyu bir düğmeye atamak ya da belgede kaydet işlemi yapmak yerine, ilgili aralığa (I3:I) veri girişi yapılınca direkt kırmızı renk ve kalın yapar mı?
 
Veri girişi yapıldığında sadece ilgili hücrede mi kontrol yapılacak, yoksa her veri girişinde tüm sütun kontrol edilecek mi?
 
İlgili sayfanın kod bölümüne aşağıdaki kodu kopyalayıp deneyiniz...
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Range("I3:I" & Rows.Count), Target) Is Nothing Then Exit Sub
For Each hcr In Intersect(Range("I3:I" & Rows.Count), Target)
    If hcr.Value <> "" And IsDate(hcr.Value) Then
        If hcr.Value >= Date + 1 And hcr.Value <= Application.WorkDay(Date, 1) Then
            hcr.Font.Color = vbRed
            hcr.Font.Bold = True
        End If
    End If
Next
End Sub
 
İlgili sayfanın kod bölümüne aşağıdaki kodu kopyalayıp deneyiniz...
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Range("I3:I" & Rows.Count), Target) Is Nothing Then Exit Sub
For Each hcr In Intersect(Range("I3:I" & Rows.Count), Target)
    If hcr.Value <> "" And IsDate(hcr.Value) Then
        If hcr.Value >= Date + 1 And hcr.Value <= Application.WorkDay(Date, 1) Then
            hcr.Font.Color = vbRed
            hcr.Font.Bold = True
        End If
    End If
Next
End Sub
Çok teşekkür ederim ömer bey, böyle böyle öğreneceğiz.. sağolun
 
Rica ederim,
İyi çalışmalar diliyorum...
 
Geri
Üst