• DİKKAT

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

standard sapma hesabı

  • Konbuyu başlatan Konbuyu başlatan ekoert
  • Başlangıç tarihi Başlangıç tarihi

ekoert

Altın Üye
Katılım
5 Ocak 2011
Mesajlar
137
Excel Vers. ve Dili
2007
Merhaba,
Siteyi ilgiyle takip ediyorum.

Uzun zamandır çözümünü aradığım bir sorum olacaktı. Herbir madde grubunun standard sapmasını nasıl hesaplayabilirim? Burada önemli bir husus satır sayılarının farklı oması.
Örnek dosya ektedir.
 

Ekli dosyalar

Merhaba,

Madde değerleri sıralı olduğu düşünülmüştür. Değilse bildiriniz tekrar düzenlerim.

Kod:
=STDSAPMA((KAYDIR($B$2;KAÇINCI("A";A:A;0)-2;;EĞERSAY(A:A;"A"))))

.
 
Üstat çok teşekkür ederim. Hızınıza yetişemedim:) Madde değerleri sıralı haldedir. Çok sağolun.

Bu şekilde alt alta dizili bir çok madde var. Anladığım kadarıyla her maddeyi formüle ayrı ayrı tanımlamam gerekiyor.Madde ismi belirtmeden herhangi bir makroyla tanımlamam mümkün olabilir mi?Madde aynıysa standard sapmasını bulmasını istiyorum.
 
Makro ile de olabilir, isterseniz C2 ve alt hücrelere almak istediğiniz madde adlarını yazın ve formülü D2 hücresine aşağıdaki gibi kullanın.

=STDSAPMA((KAYDIR($B$2;KAÇINCI(C2;A:A;0)-2;;EĞERSAY(A:A;C2))))

Dilerseniz alt hücrelere kopyalabilirsiniz.

Olmazsa makro düzenleriz.
 
Üstat tekrardan çok teşekkürler. Çok faydalı oldu.
İşim gereği böyle istatistiksel birçok veriyle uğraşmaktayım. Bunlarla ilgili bir şablon oluşturmaktayım. Eğer makrosu da olursa çok ikrama geçer.

Saygılarımla.
 
Bu şekilde deneyin.

Kod:
Sub St_Sapma()
    Dim son As Long, Wf As WorksheetFunction, i As Long, alan As Range
 
    son = Cells(Rows.Count, "A").End(xlUp).Row
    Set Wf = WorksheetFunction
    
    Application.ScreenUpdating = False
    Columns("C:D").Clear
    Range("A2:A" & son).Sort Key1:=Range("A2"), Order1:=xlAscending
    
    Range("A1:A" & son).AdvancedFilter Action:=xlFilterCopy, _
                CopyToRange:=Range("C1"), Unique:=True
                
    For i = 2 To Cells(Rows.Count, "C").End(xlUp).Row
        Set alan = Range(Cells(Wf.Match(Cells(i, "C"), [A:A], 0), 2), _
                Cells(-1 + Wf.Match(Cells(i, "C"), [A:A], 0) + _
                Wf.CountIf([A:A], Cells(i, "C")), 2))
        Cells(i, "D") = Wf.StDev(alan)
    Next i
    
    Application.ScreenUpdating = True
End Sub

.
 
Üstat, harika olmuş. Çok teşekkürler. Elinize sağlık.
 
Geri
Üst