Koşullu Biçimlendirme

Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Merhaba arkadaşlar,

Mouse ile seçtiğim hücre aralığını bir makro yardımı ile "Ctrl+m" tuşuna bastığımda kkoşullu biçimlendirmeden "ilk = 3" ve "son = 3" olan veriyi renklendirmesini istiyorum.

Teşekkür ederim.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,662
Excel Vers. ve Dili
Microsoft 365 Tr-64
Altın üyesiniz. Bir excel dosyası eklermisin tam anlaşılsın diye
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
dosyam bu şekilde sadece manuel olarak seçtiğim alanı makro ile çalıştırmak istiyorum
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,662
Excel Vers. ve Dili
Microsoft 365 Tr-64
"ilk = 3" ve "son = 3" kısmını göremedim?
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Çözüm Dosyasını ekleyemedim.

Aşağıdaki makro kodu işinizi görebilir.

Selamlar...

İlgili Resim
232390

Kod:
Sub Seçimde_ilk_3_Son_3_Renklendir()
'11.09.2019    22:38

Dim dizi(), dizi1(), hücresay

hücresay = Selection.Columns.Count * Selection.Rows.Count

Selection.Font.Bold = False
Selection.Interior.Color = xlNone

ReDim dizi(hücresay)
ReDim dizi1(hücresay)

For i = 1 To hücresay

    dizi(i) = Selection.Item(i)

Next

For i = 1 To hücresay

    For j = 1 To hücresay
   
        If dizi(i) < dizi(j) Then
       
            boş = dizi(i)
            dizi(i) = dizi(j)
            dizi(j) = boş
       
        End If
   
    Next
   
Next


sayyy = 0

For i = 1 To hücresay

    If Trim(dizi(i)) <> "" Then
   
        sayyy = sayyy + 1
       
        dizi1(sayyy) = dizi(i)

    End If

Next

If sayyy > 2 Then

    For i = 1 To hücresay
   
        If Selection.Item(i).Value = dizi1(1) Or Selection.Item(i).Value = dizi1(2) Or _
        Selection.Item(i).Value = dizi1(3) Then
           
            Selection.Item(i).Font.Bold = True
            Selection.Item(i).Interior.Color = RGB(255, 192, 0)
       
        End If
   
    Next
   
    For i = 1 To hücresay
   
        If Selection.Item(i).Value = dizi1(sayyy) Or Selection.Item(i).Value = dizi1(sayyy - 1) Or _
        Selection.Item(i).Value = dizi1(sayyy - 2) Then
           
            Selection.Item(i).Font.Bold = True
            Selection.Item(i).Interior.Color = RGB(146, 208, 80)
       
        End If
   
    Next

End If

'For i = sayyy + 1 To hücresay
'
'    Selection.Item(i) = ""
'
'Next

MsgBox "Seçili Alan İçerisinde İlk 3 ve Son 3 Değer Renklendirildi", , "Renklendirme"

End Sub
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Çok teşekkür ederim. Ellerinize sağlık
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
buna ilave olarak standart sapma 2 olanlarıda renklendirme yapabilir miyiz ?
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Merhabalar biçimlendirme bölümünde böyle bir formül çıkıyor bunu kastediyorum

232420
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Yukardaki #9 numaralı mesajınızdaki konuyu çözemedim.

Talebinizi mümkünse şu şöyle olursa şu şekilde şunu yapsın şeklinde yazabilirseniz talebiniz benim açımdan daha anlaşılır olur.

Selamlar...
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Hocam makroda standart sapma formülü nasıl yazılıyor bilmiyorum.
- Manuel olarak belirli alanı seçip
- koşullu biçimlendirme tıklıyorum
- ardından yeni kural diyorum
- sonra "yalnızca ortalamanın üstünde veya altında olan değerleri biçimlendire tıklıyorum
- şu değerleri biçimlendirden 2 std sapma altındayı seçiyorum ve hesaplıyor.

ama bunun formülünü bilmiyorum. böyle anlaşılır oldumu acaba
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Konuyu ve talebinizi hala tam olarak çözemedim.
#11 numaralı mesajınızdaki durumun uygulandığı bir örnek ekran resmini (uygulanmadan önceki halini ve uyguladıktan sonraki ekran resmini) paylaşırsanız konuyu yorumlayıp talebi net olarak anlayabilirim diye düşünüyorum.

Aslında konuya hakim birisi için talebiniz ve çözümü çok açıktır.
Fakat ben talebinizi anlayamadım.

Talebiniz anlaşıldıktan sonra excelde fonksiyonlar ve excelin yerleşik özellikleriyle, yeterli gelmediğinde makrolarla çözüm üretmek çok zor olmasa gerek.

Selamlar...
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Merhaba bu kod işimi görüyor bunu sizin kodların içerisine yedireceğim ama neresine koyacağım bilmiyorum



Kod:
Sub Makro1()
'
' Makro1 Makro
'
' Klavye Kısayolu: Ctrl+p
'
    Application.CutCopyMode = False
    Selection.FormatConditions.AddAboveAverage
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    Selection.FormatConditions(1).AboveBelow = xlBelowStdDev
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).NumStdDev = 2
    Selection.FormatConditions(1).StopIfTrue = True
End Sub
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Yukarda #13 numaralı mesajınızdaki kodlarınızı #3 numaralı mesajınızdaki dosyada çalıştırdım. Hiç bir şey olmadı.

Yani kodların çalıştığında nasıl bir etki oluşturduğunu görme fırsatım olmadı.

Belkide çok basittir. Ama şu aşamada yardımcı olamıyorum.

Selamlar...
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Merhaba

o kodu ekte gönderdiğim tabloda kenarlıkla seçtiğim alanı manuel seçerek ctrl+p yapın farkı göreceksiniz
 

Ekli dosyalar

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Merhaba

Aşağıdaki kodu bir deneyiniz.

Sizin kodları burdaki kodların altına ekledim.
Çalışma mantığını tam anlamadığımdan kendim birşeyler katamadım.

Selamlar

Kod:
Sub Seçimde_ilk_3_Son_3_Renklendir()
'11.09.2019    22:38

Dim dizi(), dizi1(), hücresay

hücresay = Selection.Columns.Count * Selection.Rows.Count

Selection.Font.Bold = False
Selection.Interior.Color = xlNone

ReDim dizi(hücresay)
ReDim dizi1(hücresay)

For i = 1 To hücresay

    dizi(i) = Selection.Item(i)

Next

For i = 1 To hücresay

    For j = 1 To hücresay
   
        If dizi(i) < dizi(j) Then
       
            boş = dizi(i)
            dizi(i) = dizi(j)
            dizi(j) = boş
       
        End If
   
    Next
   
Next


sayyy = 0

For i = 1 To hücresay

    If Trim(dizi(i)) <> "" Then
   
        sayyy = sayyy + 1
       
        dizi1(sayyy) = dizi(i)

    End If

Next

If sayyy > 2 Then

    For i = 1 To hücresay
   
        If Selection.Item(i).Value = dizi1(1) Or Selection.Item(i).Value = dizi1(2) Or _
        Selection.Item(i).Value = dizi1(3) Then
           
            Selection.Item(i).Font.Bold = True
            Selection.Item(i).Interior.Color = RGB(255, 192, 0)
       
        End If
   
    Next
   
    For i = 1 To hücresay
   
        If Selection.Item(i).Value = dizi1(sayyy) Or Selection.Item(i).Value = dizi1(sayyy - 1) Or _
        Selection.Item(i).Value = dizi1(sayyy - 2) Then
           
            Selection.Item(i).Font.Bold = True
            Selection.Item(i).Interior.Color = RGB(146, 208, 80)
       
        End If
   
    Next

End If

'For i = sayyy + 1 To hücresay
'
'    Selection.Item(i) = ""
'
'Next

'Standart Sapma 2 Olanlarıda Renklendir...
    Selection.FormatConditions.AddAboveAverage
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    Selection.FormatConditions(1).AboveBelow = xlBelowStdDev
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).NumStdDev = 2
    Selection.FormatConditions(1).StopIfTrue = True


MsgBox "Seçili Alan İçerisinde İlk 3 ve Son 3 Değer Renklendirildi", , "Renklendirme"

End Sub
 
Katılım
19 Kasım 2021
Mesajlar
80
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
19-11-2022
Merhabalar Ömer Bey ilginize çok teşekkür ederim elinize sağlık
 
Üst