Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
928to932
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
928to932
928to932
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dynamischer Gültigkeitsbereich

Dynamischer Gültigkeitsbereich
27.11.2007 12:13:00
Werner
Hallo Zusammen,
ich versuche gerade für eine Jahresarbeitsplanung einen dynamischen Gültigkeitsbereich zu erstellen.
Das Problem besteht darin, dass es über 70 Außenstellen gibt, die wiederum über 6 verschiedene Tabellen und hier nach Leistungen diese Jahresarbeitsplanung ausfüllen sollen.
Hierbei müssen je Tabellenblätter und je Außenstellen unterschiedliche Geräte (Gültigkeitsbereich) ausgewählt werden, die von den zu erbringenden Leistungen abhängen.
Also je Leistungsnummer/Tabelle/Außenstelle ändert sich der Gültigkeitsbereich.
Diesen Bereich von der ersten, bis zur letzten Zelle abzugrasen, wo ein Eintrag vorhanden ist, ist mir soweit gelungen. Nun möchte ich aber, dass evtl. Leerbereiche ignoriert werden. (Wenn dies überhaupt möglich ist)
Siehe hierzu nachfolgende Datei mit der Gültigkeitsabfrage in Zelle G5:

Die Datei https://www.herber.de/bbs/user/48081.xls wurde aus Datenschutzgründen gelöscht


Durch die enorme Vielzahl an Außenstellen ist kein Makro oder Add-In möglich.
Gruß
Werner

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamischer Gültigkeitsbereich
27.11.2007 13:12:00
jockel
hi Werner, ohne vba (und ohne add-in) fällt mir nur eine lösung mit einer hilfsspalte ein.
hier deine datei mit gültigkeit zurück...:
https://www.herber.de/bbs/user/48085.xls
Tabelle1
 I
1Test1
2Test2
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
Formeln der Tabelle
I1 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B1); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B1))))}
I2 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B2); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B2))))}
I3 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B3); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B3))))}
I4 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B4); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B4))))}
I5 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B5); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B5))))}
I6 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B6); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B6))))}
I7 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B7); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B7))))}
I8 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B8); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B8))))}
I9 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B9); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B9))))}
I10 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B10); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B10))))}
I11 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B11); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B11))))}
I12 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B12); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B12))))}
I13 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B13); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B13))))}
I14 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B14); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B14))))}
I15 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B15); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B15))))}
I16 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B16); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B16))))}
I17 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B17); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B17))))}
I18 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B18); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B18))))}
I19 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B19); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B19))))}
I20 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B20); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B20))))}
I21 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B18); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); B$1:B$100)=1;ZEILE($1:$100)); ZEILE(B18))))}
I22 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B19); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B19))))}
I23 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B20); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B20))))}
I24 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B21); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B21))))}
I25 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B22); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B22))))}
I26 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B23); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B23))))}
I27 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B24); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B24))))}
I28 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B25); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B25))))}
I29 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B26); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B26))))}
I30 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B27); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B27))))}
I31 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B28); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B28))))}
I32 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B29); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B29))))}
I33 : {=WENN(SUMME(WENN(B$1:B$100="";0;1/ZÄHLENWENN(B$1:B$100;B$1:B$100))) < ZEILE(B30); "";INDEX($B$1:$B$100;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(B$1;;;ZEILE($1:$100)); A$1:A$100)=1;ZEILE($1:$100)); ZEILE(B30))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
und in der gültigkeit: =INDIREKT("I1:I"&MAX(($I$1:$I$1000"")*ZEILE($I$1:$I$1000)))

Anzeige
AW: Dynamischer Gültigkeitsbereich
27.11.2007 13:21:49
Werner
Hallo Jockel,
danke für die Lösung, íst genau das was ich gebrauche, danke!!!
Gruß
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige