Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Automatisch am heutigen tag 8 einfügen





Frage

Hi, ich hoffe ihr könnt mir helfen, Ich habe für meine Schicht einen Anwesenheitsplan erstellt, und möchte da gern, das dieser sich selbst aktualisiert. Wenn das heutige datum ist z.b. in B4 steht das heutige datum, soll er in B7 wenn der heutige tag ist eine 8 eintagen, diese soll aber auch stehen bleiben, es soll allerdings keine 8 eingetragen werden, wenn U, AF, ZF, L, F, Su, Ko, K, Ua, Sü und B7 eingetragen ist. Wobei ich sagen muß das das Datum in der ganzen Zeile B schon eingefügt ist für den ganzen Monat. gibt es denn da eine möglich formel dafür, wenn jemand mir hoffentlich helfen kann und sich aber zu meiner Beschreibung kein Bild machen kann würde ich ihm auch den Urlaubsplan per Mail zusenden. MFG Steve

Antwort 1 von CaroS

Hallo ulle0811,

vorab mal ein paar Worte zum Grundverständnis von Tabellenkalkulationsprogrammen wie Excel: Wie kann ein Wert in eine Zelle kommen?
1. Indem Du ihn per Hand dort einträgst oder
2. indem Du in die Zelle eine Formel schreibst, Excel das Ergebnis der Formel berechnet und in die Zelle schreibt.

Beides gleichzeitig geht in einer Zelle nicht, jedenfalls nicht mit Formeln und ohne VBA. Das heißt, wenn Du einen Wert in eine Zelle eingetragen hast, kann in dieser Zelle nicht gleichzeitig noch eine Formel stehen und - je nachdem - noch einen Wert berechnen. Umgekehrt, steht in der Zelle eine Formel (und meistens ein sichtbares Ergebnis), dann kannst Du in diese Zelle nicht noch zusätzlich einen Wert eintragen, bzw. durch das Eintragen eines Wertes würdest Du die Formel überschreiben (ersetzen, löschen, sie ist dann weg). Beides gleichzeitig geht nicht.

Deswegen ist das, was Du haben willst, "hart an der Grenze" des Möglichen. Es geht, aber nur nacheinander und nur in einer Richtung (erst Formel, später evtl. ersetzt durch Wert) und Du musst rausfinden, ob das das richtige für Dich ist.

An das nächste Problem hast Du selber schon gedacht. Wenn Du eine Formel hast, die Dir an jedem Tag immer eine 8 in die jeweilige Zelle einträgt, z. B. heute in die Zelle B7, weil das heutige Datum =HEUTE() gerade mit dem Datum in der Zelle B4 übereinstimmt, dann sieht die Sache morgen wieder ganz anders aus. Die Formel, die Dir die 8 in B7 eingetragen hat, hört ja über Nacht nicht auf, eine Formel zu sein, die rechnet morgen (übermorgen, ... ) weiter, stellt jedesmal fest, dass inzwischen ein anderes Datum als in B4 ist und nimmt die 8 aus der Zelle B7 wieder weg.

Um das zu verhindern, müsstest Du jeden Tag einmal (spätestens bis Mitternacht) einen kleine Aktion per Hand (oder Makro) durchführen und die Datei speichern, und zwar die jeweilige Zelle mit der 8 markieren, kopieren, Inhalte einfügen: Werte, OK.

Oder aber Du schreibst Dir alles ein VBA-Makro. Damit kann man vor allem kompliziertere Dinge viel leichter und manche Dinge überhaupt nur so erledigen.

So, jetzt geht´s darum, erstmal eine einfache und richtige Formel für die 8 zu finden. Allerdings sind Deine Angaben (" ... das das Datum in der ganzen Zeile B schon eingefügt ist für den ganzen Monat") etwas verwirrend, denn eine Zeile B gibt es nicht. Und wenn alle Datumswerte eines ganzen Monats in der Spalte B stehen, dann weiß ich nicht, wie man da in die Zelle B7 noch eine 8 (oder ein U, AF, ZF, L, F, Su, Ko, K, Ua, Sü ?) eintragen soll.
Überhaupt ist auch der Satz " ... es soll allerdings keine 8 eingetragen werden, wenn U, AF, ZF, L, F, Su, Ko, K, Ua, Sü und B7 eingetragen ist" ziemlich unklar.
Sollte das vielleicht heißen " ... es soll allerdings keine 8 eingetragen werden, wenn U, AF, ZF, L, F, Su, Ko, K, Ua, Sü in B7 eingetragen ist" ?

Dann hätten wir das nächste Problem: eine Formel kann sich nicht auf sich selbst beziehen, sie kann nicht in B7 einen Wert eintragen und vorher in B7 nachsehen, ob schon was drinsteht. Auch mit 2 oder mehr Formeln geht das nicht, das wäre in jedem Fall ein Zirkelverweis.

Aber sobald ich weiß, wo die Datumswerte des laufenden Monats genau stehen (in Spalte ? oder Zeile ?) und wo für jeden Tag des Monats die 8 eingetragen werden soll - das müsste dann insgesamt auch wieder eine Zeile oder eine Spalte sein - mache ich Dir einen Vorschlag für eine einfache Formel. Die würde, wenn die Datumswerte in (Spalte) B3:B33 stehen, für irgendeine Nachbarspalte ungefähr so aussehen:

=WENN(B3 = HEUTE(); 8; "")

oder wenn sich außerem noch die Werte U, AF, ZF, L, F, Su, Ko, K, Ua, Sü oder leer in einer anderen Spalte, z. B. in D, befinden, dann ungefähr so:

=WENN(UND(B3 = HEUTE(); D3 = ""; 8; "")

Gruß,
CaroS

Antwort 2 von Pausenfueller

@CaroS,
wie wäre es mit: =WENN(B3 > HEUTE(); "";8) ?
Das gibt für die künftigen Tage "" aus und ansonsten immer 8. Ganz ohne VBA oder irgendwelche Kopieraktionen. Das hat auch den Vorteil, dass bei naträglichen Korrekturen dieser ominösen Kennziffern die Rückgabewerte auch entsprechend korrigiert werden. (Natürlich nur mit einer entsprechend erweiterten Formel.)
Ansonsten schließe ich mich deinen Ausführungen an.
Gruß
Pausenfüller

Antwort 3 von CaroS

Hallo Pausenfüller,

gute Idee! Darf ich die verwenden und weiterempfehlen?

Und mit den Werten in D wäre es dann:
=WENN(ODER(B3 > HEUTE(); D3 <> ""; ""; 8)

Gruß zurück,
CaroS

Antwort 4 von Pausenfueller

Selbstverfreilich ;o)

Antwort 5 von ulle0811

Hi CarolS,Pausenfüller, ich danke euch für eure hilfe, das ist genau das was ich wollte, denn i hatte mir schon den kopf extrem darüber zerbrochen.
P.s. CarolS bei deiner Formel in AW 3 kommt bei mir immer das da eine Klammer fehlt, und dann wollte ich noch gern wissen, was es mit dem D3 auf sich hat

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: