Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Passendsten Wert aus Zahlenreihe finden

211 views
Skip to first unread message

Hartmut Brüning

unread,
Oct 7, 2002, 10:15:58 AM10/7/02
to
Guten Tag,

ich suche eine Funktion unter Excel, mit der ich
aus einer Datenreihe, den Wert heraussuchen kann,
der am wenigsten von einem angegeben Wert abweicht.
Also:
GeringsteAbweichung(1,2,3,4,5,6,7,8,9;2.1) soll 2
ergeben.

Ich habe dazu nichts gefunden. Fällt jemandem etwas
ein?

Danke

Hartmut Brüning

Thomas Ramel

unread,
Oct 7, 2002, 12:04:34 PM10/7/02
to
Grüezi Hartmut

Hartmut Brüning schrieb:

Du könntest eine benutzerdefinierte Funktion folgenden Aufbaus einsetztn:

Public Function GeringsteAbweichung(Datenreihe As Range, _
Wert As Double) As Double
Dim Zelle As Range, dblDiff As Double
dblDiff = WorksheetFunction.Max(Datenreihe)
For Each Zelle In Datenreihe
If Abs(Zelle.Value - Wert) < dblDiff Then
dblDiff = Abs(Zelle.Value - Wert)
GeringsteAbweichung = Zelle.Value
End If
Next
End Function

--
Mit freundlichen Grüssen

Thomas Ramel
- MVP für Microsoft-Excel -

http://www.4853.ch/Schlesinger

Peter Dorigo

unread,
Oct 7, 2002, 12:23:51 PM10/7/02
to
Hallo Hartmut

mit Suchwert (2.1) in A1:
=VERWEIS(A1+MIN(ABS({1;2;3;4;5;6;7;8;9}-A1));{1;2;3;4;5;6;7;8;9})

sind die Vergleichswerte ( {1;2;3;4;5;6;7;8;9} ) in der Tabelle eingetragen (zB in
A2:A10), müssen diese aufsteigend sortiert sein und die Eingabe der Formel muss mit
der Tastenkombination:
Ctrl+Shift+Enter abgeschlossen werden:
=VERWEIS(A1+MIN(ABS(A2:A10-A1));A2:A10)

mfg Peter

--
MVP für MS-Excel
---------------------------


"Hartmut Brüning" <news.h....@online.de> schrieb im Newsbeitrag
news:3DA1971E...@online.de...

Thomas Ramel

unread,
Oct 7, 2002, 5:11:24 PM10/7/02
to
Grüezi Peter

Peter Dorigo schrieb:


>
> mit Suchwert (2.1) in A1:
> =VERWEIS(A1+MIN(ABS({1;2;3;4;5;6;7;8;9}-A1));{1;2;3;4;5;6;7;8;9})
>
> sind die Vergleichswerte ( {1;2;3;4;5;6;7;8;9} ) in der Tabelle eingetragen (zB in
> A2:A10), müssen diese aufsteigend sortiert sein und die Eingabe der Formel muss mit
> der Tastenkombination:
> Ctrl+Shift+Enter abgeschlossen werden:
> =VERWEIS(A1+MIN(ABS(A2:A10-A1));A2:A10)

Schöne Lösung :-)
An der MIN(ABS())-Formel habe ich auch herumstudiert; bis zur minimalen
Differenz war ich auch schon vorgestossen. Das Ganze noch in den VERWEIS()
verpackt funktioniert dann.

Peter Dorigo

unread,
Oct 8, 2002, 6:11:33 AM10/8/02
to
Hallo Thomas

"Thomas Ramel" <t.r...@mvps.org> schrieb im Newsbeitrag
news:3DA1F87C...@mvps.org...
> Grüezi Peter
>
[...]

> Schöne Lösung :-)

vielen Dank! :-)

> An der MIN(ABS())-Formel habe ich auch herumstudiert; bis zur minimalen
> Differenz war ich auch schon vorgestossen. Das Ganze noch in den VERWEIS()
> verpackt funktioniert dann.

Die Lösung hab' ich auch erst im zweiten Anlauf gefunden, nachdem ich meine erste
Formel in den Müll werfen musste, weil sie nur mit Suchwerten >= dem kleinsten
Vergleichswert funktionierte und ich keine WENN() - Konstruktionen und keine
überlange Formeln mag.

0 new messages