Hallo, ich habe ein Problem mit folgendem Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | Option Explicit
Dim start As Double
Dim ende As Double
Dim sum As Double
Dim zaehler As Double
Function oelmw(startzeile, xende)
Do While ActiveWorkbook.Workhseets( "MEAS_DATA_Track261_347" ).Cells(startzeile, 5) <= xende
sum = sum + ActiveWorkbook.Worksheets( "MEAS_DATA_Track261_347" ).Cells(startzeile, 4)
zaehler = zaehler + 1
startzeile = startzeile + 1
Loop
oelmw = sum / zaehler
End Function
|
Ich habe eine Excel Tabelle mit x,y, und z Daten (Tabellenblatt: MEAS_DATA_Track261_347). In einem anderen Tabellenblatt soll diese Funktion zunächst die Z Daten summieren und dafür bei Zeile "start" anfangen und dann jede Zeile abklappern bis der x-Wert der aktuellen Zeile = "xende". Abschließend soll dann der Mittelwert errechnet werden.
Dafür lasse ich als loopbedingung den x Wert (der in Spalte 5 steht) der Startzeile <= dem x Endwert sein.
Bei jedem Schleifendurchlauf läuft ein Zähler mit der sich immer um 1 erhöht und eine summenvariable rechnet die Summe aller Z Werte (die in spalte 4 stehen) aus.
Außerdem wird die übergebene Zeile um 1 erhöht dass auch jede einzelne Zeile durchsucht wird.
Sobald dann der X Wert der aktuellen Zeile gleich oder höher dem übergebenen X Wert ist hört die Schleife auf und die Summe aller Z werte wird durch den Zähler geteilt sodass sich der Mittelwert ergibt.
Problem: Wenn ich die Funktion aufrufe zeigt Excel mir an dass ein verwendeter Datentyp nicht stimmt. Ich habe aber keine Ahnung warum, bitte helft mir.
die X Daten sind z.B: 991,4; 991,4; 991,4; 991,5; 991,6;...; ...; ...; 3074,9
die Z Daten sind z.B: 1,339307; 2,004128; 1,956; usw.
die Y Daten (obwohl hier noch nicht verwendet) oszillieren zwischen -795 und 795.
Gruß Max
|