Microsoft Excel

Herbers Excel/VBA-Archiv

Suche in Tabelle


Betrifft: Suche in Tabelle von: Uli
Geschrieben am: 09.09.2019 16:02:18

Hallo zusammen,

ist es möglich, die in der Beispiel-Tabelle in den Zellen A16 und A17 automatisiert auszugeben? Such-Kriterium steht in dem Beispiel in Zelle A15.

https://www.herber.de/bbs/user/131933.xlsx

  

Betrifft: AW: Suche in Tabelle von: 1712037.html
Geschrieben am: 09.09.2019 16:04:20

Hallo zusammen,

ist es möglich, die in der Beispiel-Tabelle in den Zellen A16 und A17 automatisiert auszugeben? Such-Kriterium steht in dem Beispiel in Zelle A15.

https://www.herber.de/bbs/user/131933.xlsx

Ich hoffe ich habe es korrekt erläutert was ich meine.

Danke & Gruß
Uli

  

Betrifft: AW: Suche in Tabelle von: 1712039.html
Geschrieben am: 09.09.2019 16:05:33

Hola,

=WENNFEHLER(INDEX($A$3:$A$9;AGGREGAT(15;6;ZEILE($A$3:$A$9)-2/(($B$1:$G$1=$A$15)*($B$3:$G$9="x")); ZEILE(A1)));"") 
Gruß,
steve1da
  

Betrifft: Auflistung von: 1712044.html
Geschrieben am: 09.09.2019 16:17:44

Hi,

in A16 die Arrayformel:
{=WENNFEHLER(INDEX($A$3:$A$9;KKLEINSTE(WENN(B$3:B$9="x";ZEILE($X$1:$X$7));ZEILE(X1)));"")}
runterkopieren

WF

  

Betrifft: AW: Auflistung von: 1712246.html
Geschrieben am: 10.09.2019 13:11:45

Hallo, vielen Dank. Das funktioniert super. Kann man es auch so gestalten, dass umgekehrt gesucht wird? Suchkriterium ist also nicht der Name, sondern die Tätigkeit. Danke & Gruß Uli

  

Betrifft: umgekehrte Auflistung geht auch von: 1712280.html
Geschrieben am: 10.09.2019 15:09:20

Hi,

die von Dir gewünschte Tätigkeit steht in A20

in A21 steht die Arrayformel:
{=WENNFEHLER(INDEX($B$1:$G$1;KKLEINSTE(WENN((A$3:A$9=A$20)*(B$3:G$9="x");SPALTE(A1:F1));ZEILE(X1))); "") }
runterkopieren

WF

  

Betrifft: AW: wider Erwartens mal mit KGRÖSSTE() und ... von: 1712061.html
Geschrieben am: 09.09.2019 17:43:44

Hallo Uli,

... mit einer Matrixfunktion(alität)sformel die auch keines keines spez. Formelabschluss wie eine klassische Matrixformel benötigt. Die Formel von WF berücksichtigt momentan noch nicht, dass Du ja auch die Auflistung anderer Personen vornehmen würdest wollen.

In A16:

=WECHSELN(INDEX(A:A;15-KGRÖSSTE(INDEX((B$1:E$14="x")*(15-ZEILE(A$1:A$14))*(B$1:E$1=A$15););ZEILE(A1)));A$15;"")

Diese als klassische Matrixformel so:

{=WECHSELN(INDEX(A:A;15-KGRÖSSTE((B$1:E$14="x")*(15-ZEILE(A$1:A$14))*(B$1:E$1=A$15);ZEILE(A1)));A$15;"")}

Und in Excelversion ab 2010 kürzer als von SF aufgezeigt so:

=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE(B$2:B$14)/(B$2:Z$14="x")/(B$1:Z$1=A$15);ZEILE(A1)));"")

Gruß Werner
.. , - ...

  

Betrifft: AW: nachgetragen ... von: 1712069.html
Geschrieben am: 09.09.2019 18:11:21

Hallo,

... anstelle E$14 und E$1 sollte es in den ersten beiden Formeln zumindest im Beispiel richtig G$14 und G$1 lauten, damit alle Namen ausgewertet werden können.

Gruß Werner
.. , - ...

  

Betrifft: AW: wider Erwartens mal mit KGRÖSSTE() und ... von: 1712073.html
Geschrieben am: 09.09.2019 18:23:01

Hallo Werner,

Deine KGRÖSSTE()-Formeln sind schon ganz schön von 'hinten durch die Brust geschossen':
- eigentlich hat mich die WECHSELN()-Funktion darin nervös gemacht
- und die Zahl 15 hat mich auch nicht gleich eingeleuchtet

Jetzt ist mir klar:
- daß KGRÖSSTE() den Wert 0 liefert
- wenn es keine weiteren angekreuzten Werte in der Übersichtenliste gibt
- und INDEX() verweist dann auf Zelle 'A15'
- und deshalb muß WECHSELN() den darin stehenden Namen ersetzen

Ganz schön raffiniert! - aber ob das alltagstaugliche Formeln sind, muß der Fragesteller beantworten.

Gruß von Luschi
aus klein-Paris

PS: Ich würde die 2 blanken Zahlen 15 gegen ZEILE(A15) austauschen, dann wird vielleicht ein bischen klarer!?!

  

Betrifft: AW: eine Deiner Aussagen ist zu korrigieren ... von: 1712086.html
Geschrieben am: 09.09.2019 18:59:49

Hallo Luschi,

... denn KGRÖSSTE() "liefert" nicht den Wert 0, wenn es keine weiteren angekreuzten Werte in der Übersichtsliste gibt, sondern die 15 und damit ...

Gruß Werner
.. , - ...

  

Betrifft: AW: eine Deiner Aussagen ist zu korrigieren ... von: 1712103.html
Geschrieben am: 09.09.2019 21:41:22

Hallo Werner,

   Irrtum sprach der Igel und sprang von der Drahtbürste...
Hier die Formel für Zelle 'A18':
=WECHSELN(INDEX(A:A;15-KGRÖSSTE(INDEX((B$1:E$14="x")*(15-ZEILE(A$1:A$14))*(B$1:E$1=A$15););ZEILE(A3)) );A$15;"")
Markiert man den Anteil KGRÖSSTE(INDEX(...;ZEILE(A3)) und drückt dann F9, sieht die Formel in der Bearbeitungszeile so aus:
=WECHSELN(INDEX(A:A;15-{0});A$15;"")

Gruß von Luschi
aus klein-Paris

PS: die andere Sache mit AGGREGAT konnte ich vorerst nicht weitermachen, da ich noch eine Fehler gefunden hatte...
  

Betrifft: AW: kein Irrtum sondern ... von: 1712176.html
Geschrieben am: 10.09.2019 09:32:30

Hallo Luschi,

... zunächst ein Lesefehler meinerseits, der dann noch von einem Schreibfehler meinerseits übertroffen wurde. Ich wollte natürlich schreiben: 15-KGRÖSSTE() "liefert" nicht den Wert 0 ... was aber gar nicht notwendig gewesen wäre, wenn ich Deine Angaben richtig gelesen hätte. Sorry.

Gruß Werner
.. , - ...

  

Betrifft: AW: kein Irrtum sondern ... von: 1712210.html
Geschrieben am: 10.09.2019 11:14:52

Hallo Werner,

mir war schon fast klar, wie das von Dir gemeint ist, nur ob das auch die hoffentlich zahlreich mitlesenden User wissen - da habe ich meine riesengroße Zweifel und ich glaube, das sich dies nicht sehr viel in der Zukunft ändern wird - Hauptsache eine z.Z. funktionierende Formel, der Rest ist egal.
Ich wünsche Dir einen wunderschönen Excel-Tag. Bei uns ist es sehr sonnig, aber ein bißchen kühl; gestern war endlich der langersehnte Landregen da.

Gruß von Luschi
aus klein-Paris

  

Betrifft: AW: es gibt ja auch Alternativen ... von: 1712215.html
Geschrieben am: 10.09.2019 11:33:18

Hallo Luschi,

... auf eine hatte ich ja verwiesen, wenn mindestens Excel 2010 zur Verfügung stehen würde. Natürlich kann man die auch ohne dies auch mit KKLEINSTE(WENN...)) als klassische Matrixformel ermitteln. Aber Du kennst ja meine "Vorliebe" für Matrixfunktion(alität)sformeln ;-)

Geregnet hat es bei uns gestern die Nacht und den ganzen Tag. Der Regen kommt aber leider erstens zu spät und zweitens ist das Wasserdefizit noch so groß, dass es noch sehr viele Tage so regnen müsste, um den Grundwasserspiegel wieder auf das normale anzuheben.

Heute scheint schon wieder die Sonne, aber mich nervt ein Zahnnerv. Dir aber wünsche ich eine schöne Woche.

Gruß Werner
.. , - ...

  

Betrifft: AW: auch umgekehrte Auflistung so möglich ... von: 1712457.html
Geschrieben am: 11.09.2019 13:33:05

Hallo Luschi,

... ich schreib das Dir, weil Uli offensichtlich nicht interessiert war/ist.

Wenn in A20 ein Dienst aus A3:A14 gewählt wird, kann mit mit KGRÖSSTE() oder AGGREGAT() ohne {}
die Auflistung der Namen erfplgen.

In A21:
=INDEX($1:$1;SPALTE(I1)-KGRÖSSTE(INDEX((A$1:I$14="x")*(SPALTE(I1)-SPALTE(A1:I1))*(A$1:A$14=A$20););ZEILE(A1)))&""
wobei ich in dieser Formel SPALTE(I1) durch 9 ersetzt hätte, was die Formel weiter verkürzt.

Und wenn mind. Excel2010 zur Verfügung steht, dann würde ich
in A21:
=WENNFEHLER(INDEX($1:$1;AGGREGAT(15;6;SPALTE(B1:I1)/(B$3:I$14="x")/(A$3:A$14=A$20);ZEILE(B1)));"")

schreiben und die Formel(n) nach unten kopieren.

Gruß Werner
.. , - ...

Beiträge aus dem Excel-Forum zum Thema "Suche in Tabelle"