Anzeige
Archiv - Navigation
1732to1736
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Verschachtelung von Index mit Aggregat

Verschachtelung von Index mit Aggregat
14.01.2020 09:03:36
Index
Hallo Zusammen,
ich möchte gern Index mit Aggregat verschachteln...
In einer Tabelle habe ich verschiedene Arbeitsblätter mit Zeitlichen Abläufen.
In dem Auswertungsreiter soll die Formel in alle 4 Arbeitsblätter nach aktiven Baustellen suchen, und diese nach Datum (in Spalte I) sortieren.
Die Arbeitsblätter heissen
ABC20_21, ABC20_22, ABC20_23, ABC20_25
Die Formel die auf das erste Arbeitsblatt zugreift funktioniert auch:
=WENNFEHLER(INDEX(ABC20_21!B:B;AGGREGAT(15;2;ZEILE(ABC20_21!B$4:B$500)/(ABC20_21!I$4:I$500>=F$2) /(ABC20_21!F$4:F$500 "")/(ABC20_21!Z$4:Z$500 ="nicht bereit")/(ABC20_21!I$4:I$500
Ich hatte versucht, die Formel mit (oder) zu verschachteln, bzw. ohne "wennfehler" index(...);index())
Sollte es hilfreich sein, würde ich auch gern eine DEMO Tabelle zur Verfügung stellen.
Vielen Dank im Vorsaus für Eure Hilfe.
Beste Grüße
Hinnerk

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ODER- Verschachtelungen mit + vornehmen ...
14.01.2020 09:07:05
neopa
Hallo Hinmerk,
...und ja es könnte hilfreich(er) sein (D)eine Beispieldatei einzustellen.
Gruß Werner
.. , - ...
AW: Verschachtelung von Index mit Aggregat
14.01.2020 09:35:49
Index
Hallo Hinnerk,
hier ist noch ein Vorschlag, bei dem die Tabellenblätter nach dem Jahr des Verzeichnisses umbenannt werden.
Private Sub CommandButton1_Click()
Dim objWorkbook As Workbook
Dim lngIndex As Long
Dim strYear As String, strPath
Dim wksTmp As Worksheet
Call Hide
Application.ScreenUpdating = False
For lngIndex = 0 To ListBox1.ListCount - 1
With ListBox1
If .Selected(pvargIndex:=lngIndex) Then
Set objWorkbook = Workbooks.Open(Filename:= _
.List(pvargIndex:=lngIndex, pvargColumn:=1) & _
.List(pvargIndex:=lngIndex, pvargColumn:=0))
With objWorkbook
strPath = Split(.Path, "\")
strYear = strPath(UBound(strPath))
For Each wksTmp In .Worksheets
If wksTmp.CodeName > "Tabelle3" Then
wksTmp.Name = strYear & "-" & wksTmp.Name
End If
Next wksTmp
End With
End If
End With
Next
Application.ScreenUpdating = True
MsgBox "Fertig !"
CommandButton2.Value = True
End Sub
Im Unterschied zu Neopa Cs Vorschlag verwende ich gerne den Codenamen der Tabellenblätter.
Diese sind unabhängig von der Reiterposition und können durch Anwender nur schwer geändert werden.
Gruß
Jürgen
Anzeige
AW: Verschachtelung von Index mit Aggregat
14.01.2020 09:37:35
Index
Ups falscher Threat.
Sorry
Jürgen
Threat = "Drohung". THREAD ist richtig: "Faden".
14.01.2020 09:46:52
lupo1
AW: hierzu ...
14.01.2020 13:45:55
neopa
Hallo Hinnerk,
... Deine Daten aus den 4 Tabellenblättern in einer Formel auszuwerten ist zwar möglich aber wenig sinnvoll (Formel würde nur ellenlang). Deshalb würde ich vorschlagen, dass die auszuwertenden Daten in Hilfsspalten des Auswertungsblattes untereinander "gesammelt" werden und diese dann ausgewertet werden. Am einfachsten dann auch zunächst Ermittlung der Daten in Abhängigkeit von "Nicht bereit" (nur mit AGGREGAT() in Spalte I und danach in dessen Abhängigkeit die TA-Nummern in Spalte B.
Das "Sammeln der Daten aus den 4 Tabellenblättern muss dabei nicht sortiert und lückenlos erfolgen. Dazu nutze einfach nur INDEX()
Reicht Dir das schon als Hilfe? Wenn nicht, wo "klemmt" es noch?
Gruß Werner
.. , - ...
Anzeige
AW: hierzu ...
14.01.2020 16:26:16
hkoepp63
Hallo Werner,
um einen Gesamtüberblick zu bekommen, muss ich leider quer über diese 4 Zonen die Daten entsprechend auswerten.
Hier ist es nur wichtig, daß die Reihendfolge nach Datum sortiert ist. Die entsprechenden Zonen sind in diesem Fall zweitrangig.
alle anderen Informationen kann ich dann über SVERWEIS lösen. Wichtig ist das die Teilabschnitte entsprechend dem Startdatum aufgelistet werden quer über die Zonen.
Ich habe die Formel noch einmal etwas "verjüngt":
INDEX(ABC20_21!B:B;AGGREGAT(15;2;ZEILE(ABC20_21!B$4:B$500)/(ABC20_21!I$4:I$500>=F$2)/(ABC20_21!F$4:F$500 "")/(ABC20_21!I$4:I$500

Wie kann ich die Formel so "verschachteln", daß sie über alle Zonen abfragt?
Grüße
Hinnerk
Anzeige
AW: das hatte ich auch so verstanden ...
14.01.2020 21:11:33
neopa
Hallo Hinmerk,
... und mit meinem vorgeschlagener Lösungsweg wäre das auch zu realisieren. Möglicherweise hab ich den noch nicht gut genug beschrieben.
Deshalb nachgefragt: Welchen Spalten im Auswertungsblatt sind frei? Und wie viele Datensätze je auszuwertenden Tabellenblatt sind max. vorhanden?
Ich schau es mir dann morgen Nachmittag an.
Gruß Werner
.. , - ...
AW: das hatte ich auch so verstanden ...
15.01.2020 07:07:54
hkoepp63
Moin Werner,
so ganz verstehe ich Deine Frage nicht.
im Moment sollen nach Auflistung der Teilabschnitte alle Zellen mit den Inhalten aus den jeweiligen Zonen von A4 bis Z80-105 (je nach Anzahl der Teilabschnitte) befüllt
In jeder Zelle soll dann über einen Sverweis die Information in das Auswertungsblatt nachgezogen werden.
Mein Problem ist dass ich die Teilabschnitte in B auflisten muß je nach Datum in I quer über alle Zonen. Die Länge der Formel ist dann so lang wie sie ist. :-(
Vielen Dank schon einmal für Deine Hilfe Werner.
Grüße
Hinnerk
Anzeige
AW: meine Frage nach der Anzahl der Datensätze ...
15.01.2020 15:44:07
neopa
Hallo Hinnerk,
... sollte an sich verständlich gewesen sein. In Deiner Datei sind es momentan max 5 je Tabellenblatt. Wie viele können es denn denn max. werden ?
Gruß Werner
.. , - ...
AW: meine Frage nach der Anzahl der Datensätze ...
16.01.2020 07:00:29
hkoepp63
Guten Morgen Werner,
in der Zone habe ich zwischen 85 ind 105 Datensätze.
Ich schätze mal, daß ich -60/+90 Tage pro Zone ca. 20-30 Datensätze maximal habe.
Grüße
Hinnerk
AW: dann allgemein ...
16.01.2020 09:22:31
neopa
Hallo Hinnerk,
... mit Hilfsspalten, die sich variabler Datensatzanzahl anpassen.
Nachfolgend hab ich in AA1:AF1 und in AA2:AA5 die Werte vorgeben (ließen sich aber auch formeltechnisch ermittel).
Nachfolgende Formeln AB2:AD2 ziehend weit genug nach unten kopieren und die Formeln in AD anschließend nach rechts. Dort noch das Datumsformat in AE zuweisen und in AE:AF die 0-Werte benutzerdefiniert ausblenden. (Weil in Deinen Datenblättern überall 5 TA-Nrn standen habe ich einfach ein paar weitere dazugenommen, um zu zeigen, dass auch unterschiedliche Anzahlen korrekt berücksicht werden)
Nun kann zunächst auf dieser Basis der Datenwerte in AE:AF in Spalte I mit AGGREGAT() die sortierte Datenlisting erfolgen und danach mit Bezug auf diese Daten die Datenwerte aus AD in B mittels INDEX() und AGGREGAT(). Das schaffts Du jetzt allein?
Arbeitsblatt mit dem Namen 'Auswertung'
 AAABACADAEAF
1Tab_Namen0 B:BI:IZ:Z
2ABC20_215ABC20_21AA 010101.02.2020Bereit
3ABC20_2212ABC20_21AA 020101.03.2020Nicht Bereit
4ABC20_2318ABC20_21AA 020205.03.2020Nicht Bereit
5ABC20_2523ABC20_21AA 0203 Bereit
6  ABC20_21AA 0301  
7  ABC20_22AB 010101.02.2020Bereit
8  ABC20_22AB 020101.03.2020Nicht Bereit

ZelleFormel
AB2=WENN(AA2="";"";ANZAHL2(INDIREKT(AA2&"!B:B"))-1+MAX(AB1:AB1))
AC2=INDEX($AA:$AA;VERGLEICH(ZEILE()-2;$AB:$AB)+1)&""
AD2=WENN(AC2="";"";INDEX(INDIREKT($AC2&"!"&AD$1);ZÄHLENWENN($AC$2:$AC2;$AC2)+1))
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Gruß Werner
.. , - ...
Anzeige
AW: dann allgemein ...
20.01.2020 08:30:23
hkoepp63
Hallo Werner,
vielen Dank für Deine Antwort.
Ich glaube wir reden über zwei verschiedene Dinge.
Es gibt 5 Tabellenblätter:
Auswertung (wo die Magie passiert),
ABC20_21, ABC20_22, ABC20_23, ABC20_25 (wo die Daten für die jeweilige Zone sind)
Wenn in der Zone, egal welcher, in Spalte "I" ein Datum >=60 / Das funktioniert auch über diese Formel:
{=WENNFEHLER(INDEX(ABC20_21!B:B;AGGREGAT(15;2;ZEILE(ABC20_21!B$4:B$500)/(ABC20_21!I$4:I$500>=F$2) /(ABC20_21!F$4:F$500 "")/(ABC20_21!I$4:I$500
Ich möchte aber, daß die Formel, wenn auch lang und verschachtelt, über alle Zonen diese Abfrage realisiert. Ich habe leider noch nichts gefunden um einen "index" zu verschachteln.
Entschuldige meine Penetranz, aber diese Projekt gibt mir "interessante" Herausforderungen, da ich hier ca. 450 Teilabschnitte im Auge behalten muss.
Grüße
Hinnerk
Anzeige
AW: dann allgemein - für neopa C und Kollegen
20.01.2020 14:09:56
hkoepp63
Hallo Werner,
ich habe in einem anderen Beitrag eine Antwort von Dir zu einem ähnlichen Thema gefunden.
Die Formel habe ich versucht "nachzubauen" aber irgendwas mache ich falsch, weil sich das Ergebnis nicht ändert. Die Ausgangslage ist die gleiche wie oben beschrieben.
Hier die Formel:

=WENNFEHLER(@INDEX(ABC20_21!B:B;AGGREGAT(15;6;ZEILE(ABC20_21!B$4:B$500)/(ABC_20!I$4:I$500>=F$2)/ _
(ABC20_21!F$4:F$500 "")/(ABC20_21!Z$4:Z$500 ="nicht bereit")/(ABC20_21!I$4:I$500=F$2) _
/(ABC20_22!F$4:F$500 "")/(ABC20_22!Z$4:Z$500 ="nicht bereit")/(ABC20_22!I$4:I$500=F$2) _
/(ABC20_23!F$4:F$500 "")/(ABC20_23!Z$4:Z$500 ="nicht bereit")/(ABC20_23!I$4:I$500=F$2)/(ABC20_25!F$4:F$500 "")/(ABC20_25!Z$4:Z$500 ="nicht bereit")/(ABC20_25!I$4:I$500

Anzeige
AW: das ist ein bzw. der Grund ...
20.01.2020 14:34:28
neopa
Hallo Hinnerk,
... warum ich weder mir noch Dir hier eine solche Formel(anpassung) zumuten wollte, zumal ich Dir schon einen Lösungsweg aufgezeigt hatte.
Gruß Werner
.. , - ...
AW: es gibt 4 auszuwertende Tabellenblätter ...
20.01.2020 14:25:24
neopa
Hallo Hinnerk,
... und deren Daten hab ich mit Hilfsspalten im 5. Tabellenblatt, wo Deine Auswertung stattfinden soll zusammengefasst, damit diese darauf basierend von Dir leicht und überschaubar stattfinden kann. Eine Auswertung ohne diese von mir in den Hilfsspalten bereitgestellten Daten wird als Formellösung unübersichtlich lang. Ich sehe auch keinen nachvollziehbaren Grund, was eine solche notwendig machen sollte.
Gruß Werner
.. , - ...
Anzeige
AW: es gibt 4 auszuwertende Tabellenblätter ...
20.01.2020 15:41:08
hkoepp63
Hallo Werner,
dann muss ich wohl, schweren Herzens, den weg der Umleitung gehen.
Herzlichen Dank für Deine Unterstützung.
Beste Grüße
Hinnerk
AW: nimms leicht ;-) owT
20.01.2020 16:16:34
neopa
Gruß Werner
.. , - ...

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige