Diskussionsgruppe: Tabellenkalkulation
Hallo,
ich bin leider ziemlich unbedarft, was VBA angeht. Möglicherweise kann mir jemand helfen
ich habe in Excel eine Tabelle mit 3 Spalten: Spalte D enthält einen Preis, Spalte E enthält ein Einlieferungsdatum, Spalte E das Auslieferungsdatum
Nun möchte ich mittels VBA den Median der Preise des Bestandes zu einem Stichtag.
Mein bisheriger VBA Code errechnet mir die Summe der Preise des Bestandes zu einem Stichtag (hier ein Beispiel für den 30.04.2006).
Wie passe ich diesen Code so an, dass der Median errechnet wird?
Mein Code:
=Bestandswert(2006;4;30)
Function Bestandswert(Jahr As Long, Monat As Long, Tag As Long) As Double Dim i As Long Dim summe As Double With Worksheets("Daten") summe = 0# For i = 2 To 65000 If IsNull(.Cells(i, 4)) Then Exit For If IsEmpty(.Cells(i, 4)) Then Exit For If DateDiff("d", .Cells(i, 5), CDate(CStr(Tag) & "." & CStr(Monat) & "." & CStr(Jahr))) >= 0 And _ DateDiff("d", .Cells(i, 6), CDate(CStr(Tag) & "." & CStr(Monat) & "." & CStr(Jahr))) < 0 Then _ summe = summe + .Cells(i, 4) Next i Bestandswert = summe End With End Function
Vielen Dank für eure Hilfe
Gruß mbo030
Von: mbo030 Datum: 23.02.2007, 11:42
Antwort 1
von Beverly vom 23.02.2007, 12:34
Hi,
versuche es mit WoksheetFunction
Range("B2") = Application.WorksheetFunction.Median(Range("A1:A9"))
Bereich an deine Bedingungen anpassen.
Bis später, Karin
|
07111
07112
07113
07114
07115
07116
07117
07118
|