Microsoft Excel

Herbers Excel/VBA-Archiv

Abrageergebnis unterschiedlich, je nach Sortierung | Herbers Excel-Forum


Betrifft: Abrageergebnis unterschiedlich, je nach Sortierung von: Peter
Geschrieben am: 10.01.2012 23:34:41

Guten Abend

Ich habe zwei Datenblöcke, mit diesen Abfragen:
Zu 1. Block: =SVERWEIS(NAVDATE;'994033'!$D$2:$D$7;1;2)
Zu 2. Block: =SVERWEIS(NAVDATE;'994033'!$D$11:$D$16;1;2)

Beide Blöcke haben die gleichen Daten, einfach anders sortiert. Für mich ist das "richtige" Ergebnis die Abfrage aus dem 1. Block. Nun habe ich das Pech, dass die Datenlieferung immer nach Block 2 kommt.

Kann ich die Abfrage zu Block 2 modifizieren, so dass das Ergebnis zu Abfrage Block 1 identisch ist?

Gruss, Peter

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

  

Betrifft: AW: Abrageergebnis unterschiedlich, je nach Sortierung von: Markus
Geschrieben am: 10.01.2012 23:43:13

Hallo Peter,

Ändere die 2 ganz am Schluss in deiner Formel auf eine 0 (null)

lg
Markus


  

Betrifft: AW: Abrageergebnis unterschiedlich, je nach Sortierung von: Peter
Geschrieben am: 10.01.2012 23:54:48

Hallo Markus
Das Problem ist, dass nicht immer die Ueberstimmung gegeben ist. Wenn ein bestimmtes Datum nicht vorhanden, sollte das am nächsten liegende ältere genommen werden.

Gruß, Peter


  

Betrifft: AW: Abrageergebnis unterschiedlich, je nach Sortierung von: Josef Ehrensberger
Geschrieben am: 11.01.2012 00:02:21


Hallo Peter,

994033

 ABCDEFGH
105.01.2012       
2 317 28.12.2011  05.01.2012 
3 318 29.12.2011    
4 319 30.12.2011    
5 320 03.01.2012    
6 322 05.01.2012    
7 321 05.01.2012    
8        
9        
10        
11 322 05.01.2012  05.01.2012 
12 321 05.01.2012    
13 320 03.01.2012    
14 319 30.12.2011    
15 318 29.12.2011    
16 317 28.12.2011    

Formeln der Tabelle
ZelleFormel
G2{=MAX(WENN(D2:D7<=NAVDATE;D2:D7))}
G11{=MAX(WENN(D11:D16<=NAVDATE;D11:D16))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen
Namen in Formeln
ZelleNameBezieht sich auf
G2NAVDATE='994033'!$A$1
G11NAVDATE='994033'!$A$1
Namen verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4




« Gruß Sepp »



  

Betrifft: AW:Abfrageergebnis, je nach Sortierung von: Peter
Geschrieben am: 11.01.2012 08:39:52


Hallo Sepp

Vielen Dank für deine Antwort. Ich habe leider die Fragstellung nicht präzis genug gestellt.
Ich habe meine Tabelle jetzt erweitert und ich suche eine Formel, die mir letztlich derjenige Wert aus Spalte E liefert, der folgende Bedingungen erfüllt:
- auf der entsprechenden Zeile in Spalte D entspricht das Datum dem Datum von "NAVDATE" (Datum in A1) oder das nächst kleinere
- wenn dieses Datum zweimal vorkommt, soll diejenige Zeile berücksichtigt werden, in welcher in Spalte B die höhere Laufnummer steht

Kannst du mir da nochmals weiterhelfen?

Danke und Gruss, Peter




  

Betrifft: AW: AW:Abfrageergebnis, je nach Sortierung von: Josef Ehrensberger
Geschrieben am: 11.01.2012 08:52:11


Hallo Peter,

so?

994033

 ABCDEFGHIJ
105.01.2012         
2 317 28.12.20111 32205.01.20125 
3 318 29.12.20112     
4 319 30.12.20113     
5 320 03.01.20124     
6 322 05.01.20125     
7 321 05.01.20126     
8          
9          
10          
11 322 05.01.20121 32205.01.20121 
12 321 05.01.20122     
13 320 03.01.20123     
14 319 30.12.20114     
15 318 29.12.20115     
16 317 28.12.20116     
17          
18          

Formeln der Tabelle
ZelleFormel
G2{=INDEX(B2:B7;MAX(WENN((D2:D7<=NAVDATE)*(B2:B7=MAX(WENN(D2:D7<=NAVDATE;B2:B7))); ZEILE($1:$6))))}
H2{=INDEX(D2:D7;MAX(WENN((D2:D7<=NAVDATE)*(B2:B7=MAX(WENN(D2:D7<=NAVDATE;B2:B7))); ZEILE($1:$6))))}
I2{=INDEX(E2:E7;MAX(WENN((D2:D7<=NAVDATE)*(B2:B7=MAX(WENN(D2:D7<=NAVDATE;B2:B7))); ZEILE($1:$6))))}
G11{=INDEX(B11:B16;MAX(WENN((D11:D16<=NAVDATE)*(B11:B16=MAX(WENN(D11:D16<=NAVDATE;B11:B16))); ZEILE($1:$6))))}
H11{=INDEX(D11:D16;MAX(WENN((D11:D16<=NAVDATE)*(B11:B16=MAX(WENN(D11:D16<=NAVDATE;B11:B16))); ZEILE($1:$6))))}
I11{=INDEX(E11:E16;MAX(WENN((D11:D16<=NAVDATE)*(B11:B16=MAX(WENN(D11:D16<=NAVDATE;B11:B16))); ZEILE($1:$6))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen
Namen in Formeln
ZelleNameBezieht sich auf
G2NAVDATE='994033'!$A$1
H2NAVDATE='994033'!$A$1
I2NAVDATE='994033'!$A$1
G11NAVDATE='994033'!$A$1
H11NAVDATE='994033'!$A$1
I11NAVDATE='994033'!$A$1
Namen verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4






« Gruß Sepp »



  

Betrifft: AW: AW:Abfrageergebnis, je nach Sortierung von: Peter
Geschrieben am: 11.01.2012 09:37:33

Hallo Sepp
Das ist perfekt! Vielen Dank.
In den nächsten Tagen werde ich mich noch damit beschäftigen, die eine Matrixformel in einem Spaltenbereich einzusetzen, wobei ich bestimmte Zeile der Formel mit Variablen übergeben will. Ich werde dann wohl wieder im Forum Hilfe suchen müssen (in einem neuen Thread).

Gruss, Peter


  

Betrifft: AW: AW:Abfrageergebnis, je nach Sortierung von: Peter
Geschrieben am: 11.01.2012 09:58:43

Hallo Sepp

Ich habe doch noch eine Frage:

Kann ich bei der Formel in G2 im Teil
ZEILE($1:$6)

die Zahl 6 mittels indirekt von B2:B7 übernehmen? B2:B7 hat auch den Namen expLaufN; mit =ZEILEN(expLaufN) erhalte ich die Zahl 6. Kann ich die 6 durch ZEILEN(ExpLaufN) mit INDIREKT in die Formel einbauen? Falls es geht, habe ich den Dreh nicht herausgefunden.

Gruss, Peter

ZEILE($1:$6)


  

Betrifft: AW: AW:Abfrageergebnis, je nach Sortierung von: Josef Ehrensberger
Geschrieben am: 11.01.2012 10:57:49


Hallo Peter,

die anderen Bereiche müssen auch die selbe Größe haben!

994033

 ABCDEFGHI
105.01.2012        
2 317 28.12.20111 32205.01.20125
3 318 29.12.20112    
4 319 30.12.20113    
5 320 03.01.20124    
6 322 05.01.20125    
7 321 05.01.20126    
8         

Formeln der Tabelle
ZelleFormel
G2{=INDEX(expLaufN;MAX(WENN((D2:D7<=NAVDATE)*(expLaufN=MAX(WENN(D2:D7<=NAVDATE;expLaufN))); ZEILE(INDIREKT("1:"&ANZAHL2(expLaufN); 1)))))}
H2{=INDEX(D2:D7;MAX(WENN((D2:D7<=NAVDATE)*(expLaufN=MAX(WENN(D2:D7<=NAVDATE;expLaufN))); ZEILE(INDIREKT("1:"&ANZAHL2(expLaufN); 1)))))}
I2{=INDEX(E2:E7;MAX(WENN((D2:D7<=NAVDATE)*(expLaufN=MAX(WENN(D2:D7<=NAVDATE;expLaufN))); ZEILE(INDIREKT("1:"&ANZAHL2(expLaufN); 1)))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen
Namen in Formeln
ZelleNameBezieht sich auf
G2expLaufN='994033'!$B$2:$B$7
G2NAVDATE='994033'!$A$1
H2expLaufN='994033'!$B$2:$B$7
H2NAVDATE='994033'!$A$1
I2expLaufN='994033'!$B$2:$B$7
I2NAVDATE='994033'!$A$1
Namen verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4






« Gruß Sepp »



  

Betrifft: AW: AW:Abfrageergebnis, je nach Sortierung von: Peter
Geschrieben am: 11.01.2012 11:28:08

Hallo Sepp
Vielen Dank, das funktioniert.
Ich habe nun die 6 trotzdem aus ZEILEN(expLaufn) abgeleitet; dann stört es nicht, wenn es innerhalb des Auswertungsbereiches einmal eine leere Zelle hat.

Gruss, Peter


Beiträge aus den Excel-Beispielen zum Thema "Abrageergebnis unterschiedlich, je nach Sortierung"