Einführung in Standardfunktionen (min, max, KKleinste, KGrösste)

In meiner täglichen Arbeit mit Excel stoße ich oft auf die Notwendigkeit, den kleinsten oder größten Wert einer Liste zu ermitteln. Für solche Basisaufgaben bietet Excel einfache Funktionen wie MIN, MAX, KKLEINSTE und KGRÖSSTE. Die Anwendung dieser Funktionen in VBA ist ebenso unkompliziert:

  • min: Application.WorksheetFunction.Min(Range("A1:A100"))
  • max: Application.WorksheetFunction.Max(Range("A1:A100"))
  • KKleinste: WorksheetFunction.Large(Range("A1:A100"), 2)
  • KGrösste: WorksheetFunction.Small(Range("A1:A100"), 2)

Die VBA-Pendants dazu sind:

Erweiterung um MaxA und MinA

Im Laufe der Zeit erkannte ich, dass die Standardfunktionen manchmal nicht ausreichen. So berücksichtigen MaxA und MinA auch Wahrheitswerte (WAHR = 1, FALSCH = 0), was in spezifischen Situationen sehr nützlich sein kann.

siehe auch: hier

Bis daher sind das die Standardfunktionen, die eigentlich eh jeder kennt, der mit Excel schon gearbeitet hat. 

Minimum/Maximum ohne Null

Ein häufiges Problem in meinen Datenanalysen ist das Auftreten von Nullwerten, die das Ergebnis von Min- oder Max-Funktionen verfälschen können. Besonders störend ist dies, wenn Null der kleinste Wert in einer Reihe von positiven Zahlen ist. Um dies zu umgehen, habe ich die Funktion Min_ohNull entwickelt:

Größer/Kleiner als ein bestimmter Wert

Eine weitere Herausforderung, auf die ich gestoßen bin, ist das Finden des kleinsten Wertes, der größer als ein bestimmter Wert ist, und umgekehrt. Hierfür habe ich zwei Funktionen entwickelt:

Minimum oder Maximum ohne Berücksichtigung von Vorzeichen

Ein interessanter Aspekt, den ich in Betracht gezogen habe, ist die Ermittlung des Minimums oder Maximums ohne Berücksichtigung von Vorzeichen. Für diesen Fall habe ich zwei Funktionen implementiert, die sowohl positive als auch negative Werte in ihrer absoluten Größe vergleichen: