Hi Mackie,
versuch mal :
"<" & str(s+0,025),
statt
"<" &(s+0,025),
leider wars das nicht.
Vielleicht habe ich das Problem auch zu umständlich erklärt, ist mein erster Thread hier. Ich habe folgende Gleichung in Excel:
=SUMMEWENNS($AI$1:$AI$237;$S$1:$S$237;"<"&(S1+0,025);$S$1:$S$237;">"&(S1-0,025))/ZÄHLENWENNS($S$1:$S$237;"<"&(S1+0,025);$S$1:$S$237;">"&(S1-0,025))
und möchte die Gleichung nun in VBA definieren, allerdings mit zwei Veränderungen: S1 Soll keine explizite Zelle sein, sondern eine Variable und das Ende der Spalte (S237) soll Variabel sein.
Bisher habe ich:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | Sub SUMMEWENNS()
Dim AnzahlZeilenBerechnung As Integer
Dim Zaehler As Double
Dim Nenner As Double
Dim s As Double
Dim i As Double
AnzahlZeilenBerechnung = Worksheets( "Eingabedaten" ).Cells(Rows.Count, 1). End (xlUp).Row
For i = 2 To AnzahlZeilenBerechnung
s = Worksheets( "Tabelle1" ).Cells(i, 19)
Zaehler = WorksheetFunction.SumIfs(Range( "AI2:AI236" ), Range( "S2:S236" ), "<" &(s+0.025), Range( "AI2:AI236" ), Range( "S2:S236" ), ">" &(s-0.025))
Nenner = WorksheetFunction.CountIfs(Range( "S2:S236" ), "<" &(s+0.025), Range( "S2:S236" ), ">" &(s-0.025))
Sheets( "Tabelle1" ).Cells(i, 36).Value = Zaehler / Nenner
Next
End Sub
|
Und mit Macros aufzeichnen spuckt mir Excel folgendes aus:
1 | ActiveCell.FormulaR1C1 = "=SUMIFS(R2C18:R237C18,R2C14:R237C14," "<" "&(" "s" "+0.025),R2C14:R237C14," ">" "&(" "s" "-0.025))/COUNTIFS(R2C14:R237C14," "<" "&(" "s" "+0.025),R2C14:R237C14," ">" "&(" "s" "-0.025))"
|
Falls das jemanden weiterhilft. Die Spalten und Zeilen stimmen hier nicht mit dem vorherigen Beispiel überein, da ich in einer anderen Tabelle herumprobiert habe.
Viele Grüße,
Heinke
|