Frage an Profis bei den EXCEL-Formeln

Habe folgendes „akutes“ Problem:

In den Zellen A2 bis FG2 (also horizontal) habe ich alle Tage beginnend mit 28.02.2005 bis 31.07.2005.

Vertikal habe ich mir die Kurstitel, die ich veranstalten möchte, der Reihe nach angeschrieben.

ich benötige nun eine AUTOM. Anzeige, wann jeweils der LETZTE Kurstag eines (mehrtägigen) Kurses stattgefunden hat. Dies sehe ich ja nicht so ohne Weiteres, weil die Tabelle so breit ist, ich aber die Info für Folgeplanungen benötige.

ICH SUCHE:
eine Formel, die

  1. in der AKTUELLE Zeile jenen Zelleintrag rausfindet, der am weitesten RECHTS steht (ist dann auch der letzte Kurstag)
  2. Ausgehend von jener SPALTE, in der sich dieser LETZE Eintrag befindet, aus der Zelle "Aktuelle Spalte"Zeile 2 (da steht ja das DatuM!) das darin notierte Datum ausliest UND
  3. In der Spalte B der aktuellen Zeile Tag und Monat ausgibt (zB '26/11)

Sollte es zu unklar beschrieben sein, so kann ich gerne eine html-version ins netz stellen und darauf verlinken

Ersuche um Unterstützung!
Danke - Peter

Hallo Peter,

wenn Du magst kannst Du mir die Tabelle mailen ([email protected]). Dann schau ich es mir mal an und Montag früh hast Du mit Sicherheit eine Lösung von mir.

Steve1da

Datei ist schon unterwegs - danke für dein angebot!

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Lösung: MAX(…) ???
Hallo Peter,

eine Formel, die

  1. in der AKTUELLE Zeile jenen Zelleintrag rausfindet, der am
    weitesten RECHTS steht (ist dann auch der letzte Kurstag)
  2. Ausgehend von jener SPALTE, in der sich dieser LETZE
    Eintrag befindet, aus der Zelle "Aktuelle Spalte"Zeile 2 (da
    steht ja das DatuM!) das darin notierte Datum ausliest UND
  3. In der Spalte B der aktuellen Zeile Tag und Monat ausgibt
    (zB '26/11)

die Formel lautet =MAX(B2:FG2)!

Wenn das zu einfach ist, dann habe ich Dein Problem nicht verstanden.

Ich würde allerdings vorne noch eine Spalte einfügen und mir dort mit der Formel
=MIN(B2:FG2) den Kursbeginn anzeigen lassen. Dann hättest Du auf einen Blick links auf dem Tabellenblatt Kursbeginn und -ende sichtbar.
Das sähe dann wie folgt aus:
Spalte A: Kurstitel
Spalte B: MIN(D2:FG2) (FG erhöht sich entsprechend)
Spalte C: MAX(D2:FG2) (FG dito)
Spalte D: Beginn Deiner horizontalen Datumsreihe.

Probiers aus und melde Dich, ob Du es Dir so vorgestellt hast. :wink:

Gruß Gudrun

Musterdatei im Netz!
Zur besseren Verständlichkeit habe ich die Mustertabelle ins Netz gestellt: http://www.edvpeter.at/muster.xls

Dank an alle, die sich der Sache annehmen :smile:
Peter

hi,
hab mirs angesehen. m.e. müsste
=LOOKUP(„a“;D5:FG5;D$2:FG$2)
das gewünschte leisten.
(deine datumsangaben beginnen bei D2, nicht bei A2)
hth
m.

SPITZE!
Michael - Du bist Spitze! Genau das ist es!

Habe nur LOOKUP durch VERWEIS ersetzen müssen - das war’s. Und weil noch eine Kleinigkeit dazu kommt, stelle ich Dir das gleich mal dar:

Derzeit sieht die angepasste Formel so aus:

=WENN(ISTFEHLER(VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2));"";VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2))

Zwei Ziele noch - dann haben wir’s:

  1. Ich möchte also, dass die Zelle OHNE Fehlermeldung da steht, wenn keine Uhrzeit gefunden wird

  2. Ich muss nicht nur mit der Uhrzeit 09:00-12:20 sondern auch noch mit 14:00-17:20 und 18:00-21:20 vergleichen! ein exklusives ODER!

Gibt es da einen eleganteren Lösungsansatz, als eine nicht enden wollende Verschachtelung zu beginnen???

Danke schon jetzt für alle Mitdenker und -spieler :smile:
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Michael - Du bist Spitze! Genau das ist es!

Habe nur LOOKUP durch VERWEIS ersetzen müssen - das war’s. Und
weil noch eine Kleinigkeit dazu kommt, stelle ich Dir das
gleich mal dar:

Derzeit sieht die angepasste Formel so aus:

=WENN(ISTFEHLER(VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2));"";VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2))

Zwei Ziele noch - dann haben wir’s:

  1. Ich möchte also, dass die Zelle OHNE Fehlermeldung da
    steht, wenn keine Uhrzeit gefunden wird

  2. Ich muss nicht nur mit der Uhrzeit 09:00-12:20 sondern auch
    noch mit 14:00-17:20 und 18:00-21:20 vergleichen! ein
    exklusives ODER!

Gibt es da einen eleganteren Lösungsansatz, als eine nicht
enden wollende Verschachtelung zu beginnen???

Danke schon jetzt für alle Mitdenker und -spieler :smile:
Peter

Hallo Peter,

Folgende Matrix-Formel (geschweifte Klammern nicht mit eingeben, Eingabe mit ++ abschließen)leistet das von Dir gewünschte:

{=WENN(ANZAHL2(C5:FG5)\>0;INDEX($C$2:blush:FG$2;MAX(WENN(ISTLEER(C5:FG5);"";SPALTE(C5:FG5)-2)));"")}

ANZAHL2(C5:FG5)>0 :
überprüft, ob Uhrzeiten (Inhalte) eingegeben sind.

MAX(WENN(ISTLEER(C5:FG5);"";SPALTE(C5:FG5)-2)):
berechnet als Matrixformel die größte Spaltennummer für die ein Eintrag vorhanden ist. Die „-2“ am Ende der Formel ist erforderlich, da die Datumsangaben, die per Funktion INDEX gesucht werden erst in der 3. Spalte beginnen.

Die Formel kann in Spalte A dann wie gewohnt nach unten kopiert werden.

Gruß
Franz

1 Like

Es wird schon …
Hallo Franz!

Danke für die Unterstützung. Ich hab mir auch einen Teil Deiner Formel schon „vorgemerkt“.

Es bleibt für mich jedoch unklar, ob Dein Lösungsvorschlag nun bereits in die vorhandene Formel eingebaut oder eigenständig agieren soll. In letzteren Fall stellt sich aber die Frage, wie die Formel denn die Datumswerte von der Datumszeile ausliest ???

A - AKTUELLER STAND der Formelentwicklung:
=WENN(ISTFEHLER(VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2));"";VERWEIS(„09:00-12:20“;C11:FG11;C$2:FG$2))

B - VORSCHLAG von Franz (ist mir aber nicht ganz klar):
Folgende Matrix-Formel (geschweifte Klammern nicht mit
eingeben, Eingabe mit ++
abschließen)leistet das von Dir gewünschte:
{=WENN(ANZAHL2(C5:FG5)>0;INDEX($C$2:blush:FG$2;MAX(WENN(ISTLEERC5:FG5);"";SPALTE(C5:FG5)-2)));"")}
ANZAHL2(C5:FG5)>0 :
überprüft, ob Uhrzeiten (Inhalte) eingegeben sind.

MAX(WENN(ISTLEER(C5:FG5);"";SPALTE(C5:FG5)-2)):
berechnet als Matrixformel die größte Spaltennummer für die
ein Eintrag vorhanden ist. Die „-2“ am Ende der Formel ist
erforderlich, da die Datumsangaben, die per Funktion INDEX
gesucht werden erst in der 3. Spalte beginnen.

C - OFFENE PROBLEME:
Zwei Ziele noch - dann haben wir’s:

  1. Ich möchte also, dass die Zelle OHNE Fehlermeldung da
    steht, wenn keine Uhrzeit gefunden wird

  2. Ich muss nicht nur mit der Uhrzeit 09:00-12:20 sondern auch
    noch mit 14:00-17:20 und 18:00-21:20 vergleichen! ein
    exklusives ODER!

Gibt es da einen eleganteren Lösungsansatz, als eine nicht
enden wollende Verschachtelung zu beginnen???

Danke schon jetzt für alle Mitdenker und -spieler :smile:
Peter

Hallo Franz!

Danke für die Unterstützung. Ich hab mir auch einen Teil
Deiner Formel schon „vorgemerkt“.

Es bleibt für mich jedoch unklar, ob Dein Lösungsvorschlag nun
bereits in die vorhandene Formel eingebaut oder eigenständig
agieren soll. In letzteren Fall stellt sich aber die Frage,
wie die Formel denn die Datumswerte von der Datumszeile
ausliest ???

):

Folgende Matrix-Formel (geschweifte Klammern nicht mit
eingeben, Eingabe mit ++
abschließen)leistet das von Dir gewünschte:
{=WENN(ANZAHL2(C5:FG5)>0;INDEX($C$2:blush:FG$2;MAX(WENN(ISTLEERC5:FG5);"";SPALTE(C5:FG5)-2)));"")}
ANZAHL2(C5:FG5)>0 :
überprüft, ob Uhrzeiten (Inhalte) eingegeben sind.

MAX(WENN(ISTLEER(C5:FG5);"";SPALTE(C5:FG5)-2)):
berechnet als Matrixformel die größte Spaltennummer für die
ein Eintrag vorhanden ist. Die „-2“ am Ende der Formel ist
erforderlich, da die Datumsangaben, die per Funktion INDEX
gesucht werden erst in der 3. Spalte beginnen.

Die Formel funktioniert eigenständig, sie ist Ersatz für deine Formel. Sie funktioniert wie folgt:

Als erstes wird mit der Funktion ANZAHL2 gezählt, ob Einträge von Uhrzeiten vorhanden sind, wenn NEIN, dann wird „“ eingetragen, wenn JA, dann wird über die Funkion INDEX in der Zeile Datum der gesuchte Wert ermittelt. Als Matrixformel ermittelt MAX(WENN(ISTLEER(C5:FG5);"";SPALTE(C5:FG5)-2)) die am weitesten rechts (höchste Spaltennummer) stehende Uhrzeit. Diesen Wert benutzt die Funktion INDEX, um im Bereich C2:FG2 das zugehörige Datum zu finden.

Ich hoffe jetzt kommst du weiter
Ich schicke Dir per e-mail die von mir ergänzte Muster-Datei.

Gruß
Franz

1 Like

JETZT ist es GESCHAFFT
Lieber Franz!

Datei angekommen und GETESTET – VIELEN DANK – ES KLAPPT!

Dass hier nicht explizit nach den drei Zeitvarianten abgefragt wird, sondern nur auf ISTLEER oder eben nicht, ist völlig ok so!

DANK auch an alle anderen Helferlein - ist schon eine tolle Community da - Gratulation auch an die Betreiber!!!
Peter

Ein Schmankerl gäbe es noch
Hallo Peter,

mit einer kleinen Format-Änderung könntest Du Dir in Spalte A auch noch den Wochentag anzeigen lassen:

►Format ►Zellen ►Benutzerdef. ►"TTT, TT.MM.JJ" (= Tag abgekürzt)

oder

►Format ►Zellen ►Benutzerdef. ►"TTTT, TT.MM.JJ" (= Tag ausgeschrieben)

Ansonsten freue ich mich, daß mein lapidares MAX(…) doch irgendwo in der Formel vorkommt, wenn auch ganz versteckt mittendrin! :wink:

Gruß Gudrun