Aktif hücrenin bulunduğu satırı renklendirme

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Aktif hücrenin bulunduğu satırı renklendirme ve kenarlık

Merhaba arkadaşlar hayırlı geceler.

Aşağıdaki kod aktif hücrenin bulunduğu satırı renklendiriyor. Benim istediğim aktif hücre renlendiğinde yazınında kırmızı olmasını istiyorum, ekleme yapmaya çalıştım ancak kod işinden anlamadığım için yapamadım. Yardımcı olacak arkadaşlara şimdiden teşekkürler.


Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Cells.Interior.ColorIndex = xlNone
    If Intersect(Target, [A1:L500]) Is Nothing Then Exit Sub
    Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Interior.ColorIndex = 4
End Sub
 
Son düzenleme:

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Buyurun.:cool:
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Cells.Interior.ColorIndex = xlNone
    If Intersect(Target, [A1:L500]) Is Nothing Then Exit Sub
    Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Interior.ColorIndex = 4
    [B][COLOR="Red"]Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Font.Color = vbBlue[/COLOR][/B]
End Sub
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.
Mevcut kod'u aşağıdakiyle değiştirin.
Kod:
[FONT="Trebuchet MS"]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Cells.Interior.ColorIndex = [B]xlNone[/B]
    Cells.Font.Color = [B]vbBlack[/B]
[B][COLOR="Red"]If[/COLOR][/B] Intersect(Target, [A1:L500]) Is Nothing Then Exit Sub
    Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Interior.Color = [B]vbGreen[/B]
    Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Font.Color = [B]vbRed[/B]
End Sub[/FONT]
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Evren Bey ve Ömer Bey ilginize çok teşekkür ediyorum, her iki kodda güzel çalışıyor ellerinize sağlık hayırlı geceler.
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Merhaba arkadaşlar konuyu ben açtığım için aynı konu olduğundan tekrar yeni bir konu açmadım.

Forumda bulmuş olduğum ekte gönderdiğim örnek sayfa içerisindeki aktif hücrenin bulunduğu satır renkleniyor, bu benim çok işime yarıyor.

Benim yapmak istediğim sayfa içerisine koşullu biçimlendirme olarak kenarlık ekliyorum, hücreye tıkladığımda kenarlıklar gidiyor, bu kod içerisine A sütunundaki dolu olan bilgileri kontrol eden bir kenarlık eklemek istiyorum, yada sayfanın koşullu biçimlendirme ile oluşturulan kenarlık koşulu gitmesin.

Günlerdir uğraşıyorum, foruma ayrı ayrı değişik şekilde sorular sordum, aldığım bilgilere göre sayfaya uyarlamaya çalıştım benim istediğim gibi olmadı.

Yardım edecek arkadaşlara şimdiden çok teşekkür ederim.

Kod:
http://s6.dosya.tc/server3/6i37ku/Ornek1.xls.html
 

Ekli dosyalar

Son düzenleme:

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Sayın yönetici arkadaşlar konu hala günceldir.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Ekteki belgeyi inceleyiniz.
 

Ekli dosyalar

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Sayın Levent Bey ilginize teşekkür ederim, eklentiyi sayfaya ekledim ancak çalışmadı, başka belirtmiş olduğunuz linklerin bazıları çalışmıyor.

Sayın Ömer Bey ilginize teşekkür ederim, göndermiş olduğunuz örnek benim istediğim gibi bir örnek değil.

Yeniden küçük bir örnek hazırlayarak ekte gönderiyorum, sayfa içerisinde gerekli açıklama yaptım umarım anlaşılır.
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba Sayın ERASLAN.

İstediğiniz şeyi sadece,
.. 1-100 satır aralığında ve
.. A:L sütun aralığında
geçerli olmak üzere;

Seçili satır
......sarı zeminli
......A sütunu dolu ise kenarlık var,

Seçili olmayan satırlar
......Zemin rengi yok
......A sütunu dolu ise kenarlık var,

şeklinde anlıyorum doğru mudur acaba?
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Evet Ömer Bey aynen sizin dediğiniz gibi, yani benim derdim Sayfa3'teki hücre kenarlıklar siliniyor, bunun için bu kod arasına kenarlık koşulu eklemek.
 
Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhaba.
Sayfa3'ün kod bölümündeki mevcut kodları silip yerine aşağıdaki uygulayınız.
Uygulama şu şekilde;
-- J1 hücresi boşsa,
-- Seçili satır A sütunundaki son dolu hücrenin satırından sonraysa
-- Seçili sütun H sütunundan sonraysa
biçimlendirme sadece kenarlık var,
-- J1 1 iken seçili satır A sütunundaki son dolu satırdan önce veya H sütunundan gerideyse A:H arası koyu, kırmızı karakter, sarı zemin.
Sanırım istediğiniz bu şekilde.
Kod:
[B]Private Sub Worksheet_Activate()[/B]
Dim s1 As Worksheet: Set s1 = Sheets("Sayfa1")
Dim s2 As Worksheet: Set s2 = Sheets("Sayfa3")
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
sonsat = s1.Cells(65536, 1).End(3).Row
sonsut = s1.Cells(1, 1).End(2).Column
s2.Cells.ClearContents
For a = 1 To sonsat
    For b = 1 To sonsut
        s2.Cells(a, b) = s1.Cells(a, b)
    Next
Next
s2.[J1] = 1
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
[B]End Sub[/B]

[B]Private Sub Worksheet_SelectionChange(ByVal Target As Range)[/B]
On Error Resume Next

If Application.CutCopyMode = xlCopy Then Exit Sub
If Application.CutCopyMode = xlCut Then Exit Sub

If Range("J1") <> 1 Or Target.Column > 8 Or Target.Row > [A65536].End(3).Row Then
    With Range("A1:H" & [A65536].End(3).Row)
        .Borders.LineStyle = xlContinuous
        .Interior.Color = xlNone
        .Font.ColorIndex = 1
        .Font.Bold = False
    End With
Exit Sub
End If
    Cells.Interior.Color = xlNone
    Cells.Font.Bold = False
    Cells.Font.ColorIndex = 1
    Range("A" & Target.Row & ":H" & Target.Row).Interior.ColorIndex = 6
    Range("A" & Target.Row & ":H" & Target.Row).Font.Bold = True
    Range("A" & Target.Row & ":H" & Target.Row).Font.ColorIndex = 3
Call BİÇİM
[B]End Sub[/B]

[B]Sub BİÇİM()[/B]
If Range("J1") <> 1 Then Exit Sub
b = [A65536].End(3).Row
alan1 = "A1:H" & ActiveCell.Row - 1
alan2 = "A" & ActiveCell.Row + 1 & ":H" & b
a = "=$A" & ActiveCell.Row + 1

Cells.FormatConditions.Delete

    Range(alan1).FormatConditions.Add Type:=xlExpression, Formula1:="=$A1<>"""""
    Range(alan1).FormatConditions(Range(alan1).FormatConditions.Count).SetFirstPriority
    With Range(alan1).FormatConditions(1)
        .Interior.PatternColorIndex = xlAutomatic
        .Borders.LineStyle = xlContinuous
        .Borders.Weight = xlThin
    End With
    Range(alan1).FormatConditions(1).StopIfTrue = False
    Range(alan2).FormatConditions.Add Type:=xlExpression, Formula1:=a & "<> """""
    Range(alan2).FormatConditions(Range(alan2).FormatConditions.Count).SetFirstPriority
    With Range(alan2).FormatConditions(1)
        .Interior.PatternColorIndex = xlAutomatic
        .Borders.LineStyle = xlContinuous
        .Borders.Weight = xlThin
    End With
    Range(alan2).FormatConditions(1).StopIfTrue = False
[B]End Sub[/B]
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Kod:
Private Sub Worksheet_Activate()
Dim s1 As Worksheet: Set s1 = Sheets("Sayfa1")
Dim s2 As Worksheet: Set s2 = Sheets("Sayfa3")
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
sonsat = s1.Cells(65536, 1).End(3).Row
sonsut = s1.Cells(1, 1).End(2).Column
s2.Cells.ClearContents
For a = 1 To sonsat
    For b = 1 To sonsut
        s2.Cells(a, b) = s1.Cells(a, b)
    Next
Next
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Application.CutCopyMode = xlCopy Then Exit Sub
If Application.CutCopyMode = xlCut Then Exit Sub
Call RenkSil
[j1] = 1
With Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 8))
.FormatConditions.Add Type:=xlExpression, Formula1:="=$j$1=1"
.FormatConditions(1).Interior.ColorIndex = 6
.FormatConditions(1).Font.Bold = True
.FormatConditions(1).Font.ColorIndex = 3
End With

Call kenarlık
End Sub
Sub RenkSil()
On Error Resume Next
Cells.FormatConditions.Delete
End Sub
Sub kenarlık()
Cells.Borders(xlDiagonalDown).LineStyle = xlNone
  Cells.Borders(xlDiagonalUp).LineStyle = xlNone
   Cells.Borders(xlInsideVertical).LineStyle = xlNone
Cells.Borders(xlInsideHorizontal).LineStyle = xlNone

With Range("A1:H" & Cells(Rows.Count, 1).End(3).Row)
.Borders(xlLeft).LineStyle = xlContinuous
.Borders(xlTop).LineStyle = xlContinuous
.Borders(xlBottom).LineStyle = xlContinuous
.Borders(xlRight).LineStyle = xlContinuous
    End With
End Sub
Kodlarınızı bu şekilde deneyin.
Koşullu ile olmuyor.
 

Korhan Ayhan

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

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    Application.ScreenUpdating = False
    If Application.CutCopyMode = xlCopy Then Exit Sub
    If Application.CutCopyMode = xlCut Then Exit Sub
    Cells.FormatConditions.Delete
    Range("J1") = 1
    With Range("A" & Target.Row).Resize(1, 8)
        .FormatConditions.Add xlExpression, , "=$J$1=1"
        .FormatConditions(1).Borders.LineStyle = 1
        .FormatConditions(1).Interior.ColorIndex = 6
        .FormatConditions(1).Font.Bold = True
        .FormatConditions(1).Font.ColorIndex = 3
    End With
    Range("A:H").FormatConditions.Add xlExpression, , "=$A1<>"""""
    Range("A:H").FormatConditions(2).Borders.LineStyle = 1
    Application.ScreenUpdating = True
End Sub
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Sayın Ömer Bey, Sayın Acar ve Korhan Bey ilginize çok teşekkür ederim, tam istediğim gibi oldu, her üç kodda güzel çalışıyor sizleri uğraştırdım kusura bakmayın.

Hayırlı geceler.
 
Üst