Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1772to1776
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
Datumsbereich ausgeben (von bis)
30.07.2020 11:06:00
bis)
Hallo liebes Forum,
ich habe eine Tabelle mit einer Userform.
in der Userform wird aus einer Combobox ein Username ausgewählt, dieser wird dann in Tabelle 2 in A2 geschrieben.
In Tabelle 1 Spalte A stehen mehrere Datumsangaben, in Zeile 1 Stehen die Usernamen, unter den Namen ein oder mehr "X".
Wenn jetzt ein Name in der Combobox ausgewählt wird soll in Tabelle 2 er Datumsbereich erscheinen der mit "X" markiert ist.
z.b. Bei Peter (Tabelle1 Spalte B) ist am 02.01.2020, 03.01.2020, 04.01.2020, 11.01.2020, 15.01.2020 und 16.01.2020 ein "X"
Nun wird Peter in der Combobox ausgewählt.
Jetzt soll in Tabelle 2 in B3 der 02.01.2020 und in C3 04.01.2020; in B4 11.01.2020, C4 11.01.2020; B5 15.01.2020 C5 16.01.2020 erscheinen.
Ich hoffe das man das lösen kann. Vielen Dank im Voraus.
Liebe Grüße Patrick

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Strictly nur in XL365 "beta", nicht in XL-Online!
30.07.2020 12:16:01
lupo1
Tabelle2!B3:
=LET(n;VERGLEICH(A2;User;);INDEX(SORTIEREN(XMLFILTERN(WECHSELN("&lta&gt&ltb&gt"&
TEXTVERKETTEN(".";;WENN((INDEX(Q!B1:K16;;n)&lt&gt"X")*(INDEX(Q!B2:K17;;n)="X");Q!A2:A17;""))&"."&
TEXTVERKETTEN(".";;WENN((INDEX(Q!B3:K18;;n)&lt&gt"X")*(INDEX(Q!B2:K17;;n)="X");Q!A2:A17;""))&
"&lt/b&gt&lt/a&gt";".";"&lt/b&gt&ltb&gt");"//b"));SEQUENZ(ANZAHL2(INDEX(Q!B2:K17;;n))/2)*2-1+REST(SEQUENZ(;2;0);2)))

Tabelle1 habe ich vorher in Q umbenannt.
Anzeige
AW: 2 kleine AGGREGAT()-Formeln tun es auch ...
30.07.2020 12:54:32
neopa
Hallo Patrick,
... und dies auch u.a. in der angegebenen Excelversion 2016:
Nachfolgende 2 Formeln einfach weit genug nach unten kopieren:
Arbeitsblatt mit dem Namen 'Tabelle2'
 ABC
1Name  
2marryvonbis
3 02.01.202003.01.2020
4 08.01.202010.01.2020
5   

NameBezug
User=Tabelle1!$B$1:$K$1

ZelleFormel
B3=WENNFEHLER(AGGREGAT(15;6;Tabelle1!A$2:A$99/(Tabelle1!B$1:Z$1=A$2)/(Tabelle1!B$1:K$98>"x")/(Tabelle1!B$2:K$99="x");ZEILE(A1));"")
C3=WENNFEHLER(AGGREGAT(15;6;Tabelle1!A$2:A$99/(Tabelle1!B$1:Z$1=A$2)/(Tabelle1!B$2:K$98="x")/(Tabelle1!B$3:K$99>"x");ZEILE(A1));"")

ZelleGültigkeitstypOperatorWert1Wert2
A2Liste =User 
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
.. , - ...
Anzeige
Kann man machen ... ist auch schön kurz, aber:
30.07.2020 13:34:29
lupo1
- es sind zwei verschiedene Formeln, die man
- nach unten kopieren muss, und deren daraufhin
- freibleibende Leerbereiche einen anderen Datentyp als die gefüllten Zellen ausweisen.
In vielen Fällen ist das nicht schlimm. In vielen.
AW: nur für Dich ;-) auch mit nur einer Formel ...
30.07.2020 14:05:29
neopa
Hallo lupo1,
... in B3:
=WENNFEHLER(AGGREGAT(15;6;Tabelle1!$A$2:$A$99/(Tabelle1!$B$1:$K$1=$A$2)/(INDEX(Tabelle1!$B:$K;1+2*(B$2="bis");):INDEX(Tabelle1!$B:$K;99;)"x")/(Tabelle1!$B$2:$K$99="x");ZEILE(A1));"")
und nach unten und rechts kopieren.
Gruß Werner
.. , - ...
Mit zwei weiteren Angaben würde sie dynamisch ...
30.07.2020 15:07:56
lupo1
... nämlich statt
ZEILE(A1) einfach
SEQUENZ(AnzahlXderPerson/2) oder dem Pendant
ZEILE(A1:INDEX(A:A;AnzahlXderPerson/2)) ...
... und einem "blinden"
+SEQUENZ(;2)*0 bzw.
+SPALTE(A1:B1)*0
Anzeige
AW: Kann man machen ... ist auch schön kurz, aber:
30.07.2020 14:54:22
Patrick
Das funktioniert ja super.
Vielen Dank, genau so wollte ich es haben.
Liebe Grüße Patrick
AW: so nicht eindeutig ...
30.07.2020 15:10:54
neopa
Hallo Patrick,
... welchen Formvorschlag Du nun eingesetzt hast. Den von lupo1 oder meine 2-Formellösung oder meine abschließende 1-Formellösung?
Gruß Werner
.. , - ...
Bestimmt AGGREGAT, weil ...
30.07.2020 15:14:35
lupo1
1) nicht so versionseingeschränkt
2) kürzer
3) ohne das häßliche XMLFILTERN, welches momentan die SPLITTEN()-Krücke in Excel ist.
AW: so nicht eindeutig ...
31.07.2020 10:03:10
Patrick
Hallo Werner,
ich habe deinen Vorschlag verwendet (zwei Formeln).
Deine Lösung funktioniert wunderbar.
Nun muss ich doch leider die Frage stellen, ob sich das auch mittels VBA lösen lässt.
Mit den Formeln wird die ganze Excelmappe sehr Langsam.
Wäre es da nicht besser, wenn die Brechnung nur dann ausgeführt wird, wenn sie gebraucht wird?
Also erst dann, wenn in der Combobox ein Name ausgewählt wird?
Im Moment werden ja die Berechnungen bei jeder Eingabe in Tabelle1 durchgeführt.
Da es später ca 90 User werden und der Datumsbereich das ganze Jahr, wird der Bereich mit den "X" nachher riesig.
Gruß Patrick
Anzeige
AW: hierzu ...
31.07.2020 10:49:36
neopa
Hallo Patrick,
... zunächst aus VBA-Lösungen halte ich mich grundsätzlich außen vor. Das können andere wesentlich besser als ich.
Die Berechnungen mit den Formeln sollten auch für 90 Spalten und 366 Zeilen kein Problem sein, außerdem könntest Du bei Bedarf es mit VBA steuern, wann die Berechnung durchgeführt werden soll.
Gruß Werner
.. , - ...
AW: hierzu ...
03.08.2020 16:08:02
Patrick
Hallo Werner,
danke für deine Antwort. Das hört sich nach einem Lösungsansatz an.
Ich werde mich daran versuchen die Berechnung mit VBA zu steuern.
Für die Formeln ist das sicher kein Problem, die bekommen das hin. Nur wird bei jeder Eingabe in Tabelle eins eine Denkpause eingelegt um die Formeln zu berechnen.
Auf meinem Desktop geht das Recht schnell, aber am Laptop ist es doch sehr zu merken.
Nach der Bestätigung einer Eingabe können schonmal gut zwei bis drei Sekunden vergehen bis die Nächste Eingabe getätigt werden kann.
Gruß Patrick
Anzeige
AW: kann ich so nicht nachvollziehen ...
03.08.2020 19:09:50
neopa
Hallo Patrick,
... kannst Du diese Datei mal einstellen? Du kannst ja die Namen in Zeile 1 einfach durch Name_001; Name_002...
Gruß Werner
.. , - ...
AW: kann ich so nicht nachvollziehen ...
03.08.2020 19:42:12
Patrick
Hallo Werner,
Ich hatte diese Datei zu einem anderen Thema hochgeladen.
https://www.herber.de/bbs/user/136880.xlsb
Ich kann aber gerne auch die aktuelle Datei hochladen.
In dieser Datei ist das hier angesprochene noch nicht eingebaut.
Gruß Patrick
AW: ... dann bau es erst einmal ein owT
03.08.2020 19:56:01
neopa
Gruß Werner
.. , - ...
AW: kann ich so nicht nachvollziehen ...
03.08.2020 20:23:43
Patrick
Hallo Werner,
Ich hatte diese Datei zu einem anderen Thema hochgeladen.
https://www.herber.de/bbs/user/136880.xlsb
Ich kann aber gerne auch die aktuelle Datei hochladen.
In dieser Datei ist das hier angesprochene noch nicht eingebaut.
Gruß Patrick
Anzeige
AW: warum nochmal? Dazu siehe oben drüber owT
04.08.2020 09:25:12
neopa
Gruß Werner
.. , - ...
AW: warum nochmal? Dazu siehe oben drüber owT
04.08.2020 16:39:11
Patrick
Hallo Werner,
das war keine Absicht.
Mein Browser zeigte mir an das die Seite nicht geladen werden konnte, bin dann auf nochmal versuchen...
Ich werde mich morgen darüber hermachen und eine Datei hochladen.
Gruß Patrick
AW: warum nochmal? Dazu siehe oben drüber owT
04.08.2020 16:59:36
Hajo_Zi
Hallo PÖatrick,
offen bedeutet es soll noch eine Antwort kommen.
Warum ist dein Beitrag Offen.
Du willst doch was machen. Soll jemand vorbei kommen?
Das ist nur meine Meinung zu dem Thema.

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige