SORU ve CEVAPLAR (Yazılabilir) > Çözülen Excel, Vba, Makro, Formül vb. Soruları

[Çözüldü] Renkelere göre saydırma

(1/2) > >>

jepue:
Arkadaşlar merhaba,

Excel de renklere göre satır saydırma nasıl yapabilirim?

Yeşil renkli satır kaç tane ,sarı renkli satır kaç tane?

Bülent Öztürk:
Merhaba, hoş geldiniz.

Örnek bir dosya ekleyebilir misiniz?

jepue:

--- Alıntı yapılan: Bülent Öztürk - 09 Haziran 2010, 17:57:07 ---Merhaba, hoş geldiniz.

Örnek bir dosya ekleyebilir misiniz?

--- Alıntı sonu ---

Ekledim.

http://rapidshare.com/files/397109542/__rnek.rar.html

Bülent Öztürk:
Kullanıcı tanımlı fonksiyon ile şöyle sorunu halledebiliriz;


--- Kod: ---Public Function renk_say(kendim As Range, aralik As Range)
    Dim excelce As Range
    Dim r_say As Long
    Application.Volatile
    kendimm = kendim.Interior.ColorIndex
    For Each excelce In aralik
        If excelce.Interior.ColorIndex = kendim.Interior.ColorIndex Then r_say = r_say + 1
    Next excelce
    renk_say = r_say
End Function

Public Function renk_topla(tkendim As Range, taralik As Range)
    Dim excelcenet As Range
    Dim r_say As Long
    Application.Volatile
    tkendimm = tkendim.Interior.ColorIndex
    For Each excelcenet In taralik
        If excelcenet.Interior.ColorIndex = tkendim.Interior.ColorIndex Then r_topla = r_topla + excelcenet.Value
    Next excelcenet
    renk_topla = r_topla
End Function


--- Kod sonu ---

Kullanımı:
Yukarıdaki kodları bir modüle yapıştırın.
Excel sayfasında, sayı adedi veya toplam alacağınız, yani aşağıdaki formülü yazacağınız hücreleri de aynı renk yapıp, formülleri yazın.

=renk_say(D2;B2:B20)

=renk_topla(E2;B2:B20)

Örnek dosyanız ektedir:


[Forum yazılım güncelleme esnasında sorun oluştuğundan eklendi silinmiştir.]

jepue:

--- Alıntı yapılan: Bülent Öztürk - 09 Haziran 2010, 22:20:41 ---Kullanıcı tanımlı fonksiyon ile şöyle sorunu halledebiliriz;


--- Kod: ---Public Function renk_say(kendim As Range, aralik As Range)
    Dim excelce As Range
    Dim r_say As Long
    Application.Volatile
    kendimm = kendim.Interior.ColorIndex
    For Each excelce In aralik
        If excelce.Interior.ColorIndex = kendim.Interior.ColorIndex Then r_say = r_say + 1
    Next excelce
    renk_say = r_say
End Function

Public Function renk_topla(tkendim As Range, taralik As Range)
    Dim excelcenet As Range
    Dim r_say As Long
    Application.Volatile
    tkendimm = tkendim.Interior.ColorIndex
    For Each excelcenet In taralik
        If excelcenet.Interior.ColorIndex = tkendim.Interior.ColorIndex Then r_topla = r_topla + excelcenet.Value
    Next excelcenet
    renk_topla = r_topla
End Function


--- Kod sonu ---

Kullanımı:
Yukarıdaki kodları bir modüle yapıştırın.
Excel sayfasında, sayı adedi veya toplam alacağınız, yani aşağıdaki formülü yazacağınız hücreleri de aynı renk yapıp, formülleri yazın.

=renk_say(D2;B2:B20)

=renk_topla(E2;B2:B20)

Örnek dosyanız ektedir:

--- Alıntı sonu ---




Teşekkür ederim çok işime yaradı.

Navigasyon

[0] Mesajlar

[#] Sonraki Sayfa

Tam sürüme git