Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wert in Intervall suchen + weitere Bedingung

Forumthread: Wert in Intervall suchen + weitere Bedingung

Wert in Intervall suchen + weitere Bedingung
22.08.2018 15:51:12
Gode
Hallo,
ich suche eine Formel, die mir über 2 Kriterien aus einem Bereich einen Wert zurückgibt.
a) der nächst kleinere Intervallwert
b) der Wert der meinem Suchwert am nächsten liegt
Siehe Beispiel:
https://www.herber.de/bbs/user/123499.xlsx
Wäre toll wenn hier jemand eine Idee hätte!
Vielen Dank im Voraus!
Gode
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit AGGREGAT() ...
22.08.2018 16:04:47
neopa
Hallo Gode,
.... so in G2: =AGGREGAT(14;6;B2:B99/(B2:B99
=AGGREGAT(15;6;B2:B99/(B2:B99>E2);1)

Gruß Werner
.. , - ...
AW: richtig gestellt ...
22.08.2018 16:09:59
neopa
Hallo,
... so:
 ABCDEFG
1IDMenge     
2A1 A8Rückgabe:5
3A5     
4A10 A8Rückgabe10
5A100     
6B2     
7B5     
8B20     
9B80     
10       

Formeln der Tabelle
ZelleFormel
G2=AGGREGAT(14;6;B2:B99/(B2:B99<E2)/(A2:A99=D2); 1)
G4=AGGREGAT(15;6;B2:B99/(B2:B99>E4)/(A2:A99=D4); 1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...
Anzeige
AW: richtig gestellt ...
22.08.2018 16:35:52
Gode

Hallo Werner,
vielen Dank schonmal! Passt auf alle Fälle super für meinen ersten Fall!
Beim 2. hätte ich aber gerne den Wert zurück, der am nächsten am Suchwert dran ist:
z.B. D4=B und E4=8 -> sollte mir ebenfalls den Wert 3 zurückliefern, da 3 näher an 8 ist ...  _
ich bekomme aber den nächst höheren Wer, also 20 zurück ... vll. gibts ja dafür auch einen Weg
BTW ... scheint mir die Aggregat-Funktion recht mächtig ... werde ich mich auf jeden Fall mal  _
mit beschäftigen.
Und vielen Dank nochmal für die schnelle Hilfe!
Gruß
Gode

Anzeige
AW: Wert der am nächsten dem Suchwert ist ...
22.08.2018 16:49:54
neopa
Hallo Gode,
... z.B. (vorab, es geht mit einer echten klassischen Matrixformel etwas kürzer, es geht aber auch) so:
 ABCDEFG
2A1 A8Rückgabe:5
3A5     
4A10 B8Rückgabe3
5A100     
6B2     
7B3     
8B20     
9B80     
10       

Formeln der Tabelle
ZelleFormel
G2=AGGREGAT(14;6;B2:B99/(B2:B99<E2)/(A2:A99=D2); 1)
G4=AGGREGAT(15;6;B2:B9/(AGGREGAT(15;6;ABS(B2:B9-E4)/(A2:A9=D4); 1)=ABS(B2:B9-E4))/(A2:A9=D4); 1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...
Anzeige
AW: Wert der am nächsten dem Suchwert ist ...
22.08.2018 17:26:39
Gode
Hallo Werner,
puhhh ... ich hab die Formel in meinem Excel so implementiert und funktioniert!! ... aber verstehen tu ich's ehrlich gesagt nicht ... vll. mal in Muße und Ruhe anschauen und nicht in der Bürohektik!
Auf alle Fälle nochmal vielen Dank für deine Hilfe!!!!!
Gruß
Gode
AW: dazu viellieicht folgendes ...
22.08.2018 17:54:38
neopa
Hallo Gode,
... eine derartige Formel ist für jemanden, der sein Excellevel mit "Basiswissen" angibt, sicherlich auch nicht leicht zu verstehen.
Wenn Du Dich wirklich damit mal auseinandersetzen willst, dann wisse, es handelt sich hier im engeren Sinn um eine Matrixformel, die sich von einer klassischen Matrixformel dadurch unterscheidet, dass sie hier nicht den spez. Matrixformelabschluss bedarf.
Mehr zu klassischen Matrixformeln sieh mal hier:
https://www.online-excel.de/excel/singsel.php?f=26 Dazu nimm Dir aber die notwendige Zeit.
Anschließend betrachte zunächst die einzelnen Formelteile: also (A2:A9=D4) dann ABS(B2:B9-E4) z.B. durch Markierung in der Eingabezeile und der Betätigung mittels [F9]
Danach sieh in der MSO-Hilfe, was da zu AGGREGAT() steht. Leider nicht wirklich ausreichend genug) aber ausreichend für die Erklärung die ersten beiden Argumente.
Dann schreib mal in eine Extra-Zelle die "innere" AGGREGAT()-Formel so:
=(AGGREGAT(15;6;ABS(B2:B9-E4)/(A2:A9=D4);1) . Diese Teilformel dient, wie Du leicht siehst dazu, die kleinste Absolut-Differenz aller entsprechenden Mengenwerte zum Vorgabewert zu ermitteln. Dieses Zwischenergebnis wird in der "äußeren AGGREGAT() -Formel mit allen Mengen-Differenzen der jeweiligen ID gemäß D4 zum Vorgabewert in E4 verglichen. Danach erhält man die gesuchte Menge.
Mach Dir keine Gedanken, wenn Du dazu viele Stunden und mehr brauchen solltest. Das ging den meisten so.
Gruß Werner
.. , - ...
Anzeige
ohne Aggregat wohl verständlicher
22.08.2018 19:48:28
WF
Hi,
folgende Arrayformeln:
{=MAX((B2:B19<E2)*(A2:A19=D2)*B2:B19)}
und:
{=MIN(WENN(A2:A19="A";WENN(ABS(B2:B19-E2)=MIN(WENN(A2:A19="A";ABS(B2:B19-E2)));B2:B19)))}
WF
;
Anzeige
Anzeige

Infobox / Tutorial

Wert in Intervall suchen und zurückgeben


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Stelle sicher, dass Deine Daten in einem klar strukturierten Bereich vorliegen. Zum Beispiel in den Spalten A (ID) und B (Menge).

  2. Formel für den nächstkleineren Wert: Verwende die folgende Formel in Zelle G2:

    =AGGREGAT(14;6;B2:B99/(B2:B99<E2)/(A2:A99=D2);1)

    Diese Formel gibt den nächstkleineren Wert zurück, der kleiner als der Suchwert in E2 ist und zur ID in D2 gehört.

  3. Formel für den nächstgelegenen Wert: In Zelle G4 kannst Du die Formel für den nächstgelegenen Wert verwenden:

    =AGGREGAT(15;6;B2:B99/(AGGREGAT(15;6;ABS(B2:B99-E4)/(A2:A99=D4);1)=ABS(B2:B99-E4))/(A2:A99=D4);1)

    Diese Formel findet den Wert, der am nächsten an dem Suchwert in E4 liegt.


Häufige Fehler und Lösungen

  • Fehler: #DIV/0!: Wenn Du diesen Fehler siehst, überprüfe, ob die Bedingungen in den Formeln korrekt sind. Achte darauf, dass die Bereiche und Suchwerte nicht leer sind.

  • Fehler: Falscher Wert wird zurückgegeben: Stelle sicher, dass die ID und die zugehörigen Werte korrekt in den Formeln referenziert werden. Oftmals sind falsche Zellbezüge der Grund für unerwartete Ergebnisse.


Alternative Methoden

Eine alternative Möglichkeit, um Werte in einem Intervall zu suchen, ist die Verwendung von Matrixformeln. Hier sind zwei Beispiele:

  1. Nächstkleiner Wert:

    {=MAX((B2:B19<E2)*(A2:A19=D2)*B2:B19)}
  2. Nächstgelegener Wert:

    {=MIN(WENN(A2:A19="A";WENN(ABS(B2:B19-E2)=MIN(WENN(A2:A19="A";ABS(B2:B19-E2)));B2:B19))}

Diese Formeln erfordern, dass Du die Eingabe mit Strg + Shift + Enter bestätigst, um sie als Matrixformel zu aktivieren.


Praktische Beispiele

Angenommen, Du hast folgende Daten:

ID Menge
A 1
A 5
A 10
B 2
B 3
B 20

Wenn Du in E2 den Wert 8 und in D2 die ID A hast, gibt die Formel in G2 den Wert 5 zurück, während die Formel in G4 den Wert 10 zurückgibt.


Tipps für Profis

  • Nutze die AGGREGAT()-Funktion effektiv, um Daten auch bei gefilterten oder versteckten Zeilen zu analysieren.

  • Wenn Du mit großen Datenmengen arbeitest, denke daran, die Formeln zu optimieren, um die Berechnungszeit zu reduzieren.

  • Experimentiere mit der Kombination von WENN- und ABS-Funktionen, um komplexere Bedingungen zu erstellen.


FAQ: Häufige Fragen

1. Wie kann ich die Formeln anpassen, wenn meine Daten in anderen Spalten sind? Du kannst die Zellbezüge in den Formeln einfach anpassen, indem Du die entsprechenden Spalten und Zeilen änderst.

2. Funktioniert das auch in Excel 365? Ja, die beschriebenen Funktionen und Formeln sind in Excel 365 sowie in früheren Versionen verfügbar. Achte darauf, dass Du die Formeln korrekt eingibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige