Mal angenommen man möchte von einer Liste einen Wert suchen, der am ehesten einen anderen Wert entspricht kann man folgende Funktion verwenden:

Umsetzung mit einer Matrix-Formel

{=INDEX(Bereich_der_ausgegeben_werden_soll;VERGLEICH(MIN(ABS(Bereich_der_verglichen_werden_soll-Vergleichswert));ABS(Bereich_der_verglichen_werden_soll-Vergleichswert);0))}

Anmerkung: Matrix-Formel

Beispiel: Der Student mit dem besten 4er.

Beispiel: der beste Student

Beispiel: Der Monat der am ehesten eine bestimmte Temperatur hat

Beispiel: Der durchschnittlichste Springer

Umsetzung in VBA

Funktionsweise der amehesten Funktion

  • Parameter:
    • Ausgabebereich: Der Bereich, aus dem der nächstgelegene Wert ermittelt wird.
    • Vergleichsbereich: Der Bereich, in dem nach dem nächsten Wert gesucht wird.
    • Wert: Der Vergleichswert.
    • iVergleichsart (optional): Steuert die Art des Vergleichs (0 = absolut, 1 = nur größer, 2 = nur kleiner).
  • Logik:
    • Die Funktion prüft, ob die beiden Bereiche gleich groß sind.
    • Sie speichert dann Werte und ihre Differenzen zum Vergleichswert in einem Array.
    • Schließlich wird der Wert im Array gefunden, der die geringste Differenz zum Vergleichswert aufweist.