Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1260to1264
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Klassenbildung Excel

Klassenbildung Excel
meixner
Hallo zusammen,
ich habe tägliche Renditen für DAX Index seit 1960 und möchte dafür die Häufigkeiten in Klassen abbilden.
z.B. -14%, -10%, -6%, -2%, 2%, 6%, 10%, 14%.
Habe dafür auch ein Makro gefunden, der aber leider die Häufigkeit für diese Klassen nicht richtig anzeigt.
Weiss jmd. wo der Fehler liegen könnte!
Vielen dank.
dani
Dim arrVert As Variant, iJ As Integer
Dim Zeile As Long
With ActiveSheet
arrVert = Array(-2, -4, -6, -8, -10, -12, -14, 0, 2, 4, 6, 8, 10) 'Array für Verteilung - ggf. anpassen
'Häufigkeit für Werte in Spalte A ab Zeile 2 ermitteln
varArr = fncHaeufigkeit(rngWerte:=.Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)), _
arrVerteilung:=arrVert) 'Zellbereich ggf. anpassen
End With
'Ergebnis in Spalte B und C der Tabelle ab Zeile 2 eintragen
With ActiveSheet
Zeile = 2: iJ = 0 'Startzeile
If .Cells(Zeile, 2).End(xlUp) >= Zeile Then
.Range(.Cells(Zeile, 2), .Cells(Zeile, 2).End(xlUp).Offset(0, 1)).ClearContents
End If
For ii = LBound(varArr) To UBound(varArr)
If iJ Cells(Zeile, 2) = arrVert(iJ) 'Bereichgrenze
Else
Cells(Zeile, 2) = ">" & arrVert(iJ - 1) 'Ausreißer nach oben
End If
Cells(Zeile, 3) = varArr(ii) 'Häufigkeit
Zeile = Zeile + 1: iJ = iJ + 1
Next
End With
End Sub
Function fncHaeufigkeit(rngWerte As Range, arrVerteilung As Variant) As Variant
Dim arrHaeufig() As Long, varWert, ii As Integer
'rngWerte = Zellbereich für den die Häufigkeitsverteilung ermittelt werden soll
'arrVerteilung = Array/Matrix mit den Wertebereichen der Verteilung in aufsteigender Folge
ReDim arrHaeufig(LBound(arrVerteilung) To UBound(arrVerteilung) + 1)
For Each varWert In rngWerte.Cells
If IsNumeric(varWert) Then
For ii = LBound(arrVerteilung) To UBound(arrVerteilung)
If varWert.Value 

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Klassenbildung Excel
16.05.2012 14:17:58
guentherh
Hallo dani,
Hier ein Beispiel ohne Makro:
https://www.herber.de/bbs/user/80172.xls
btw:

'arrVerteilung = Array/Matrix mit den Wertebereichen der Verteilung in aufsteigender Folge

wird von Deiner arrVert nicht berücksichtigt!!
Es soll Mathematiker geben, die behaupten -2 wäre größer als -4 und und bei aufsteigender Sortierung würde -4 vor -2 stehen...
Gruß,
Günther
AW: Klassenbildung Excel
16.05.2012 14:36:10
meixner
vielen Dank für das Beispiel Günther!
VG
dani

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige