Datumsfelder in Tabelle sperren

Guten Tag zusammen,

ich habe eine recht einfache Frage, zu der ich aber keine zufriedenstellende Antwort googlen konnte:

Ich habe eine recht aufwendige Tabelle programmiert. Jetzt gibt es einige Felder, die ein Datum enthalten, das bei jedem Öffnen dynamisch berechnet wird. Gibt es eine Möglichkeit die Datumsberechnung zu sperren um bei einem späteren Ausdrucken des Plans noch die Daten drin stehen zu haben, die am Tag des Ausfüllen der Tabelle drin standen.

Ich stelle mir das so vor:
Montag=heute() … Dienstag=heute()+1 usw.

Dann gibt es ein Feld oder Klickbutton oder so, dass die werte, die heute drin stehen „gesperrt“ werden und beim morgigen öffnen nicht wieder neu berechnet werden.

Ich hoffe ich habe mich verständlich ausgedrückt. Danke schon jetzt für Eure antworten.

Beste Grüße!

Dominic

Hallo Dominic,

Felder werden doch in Tabellen (Excel) nicht automtisch berechnet, wenn man es nicht entsprechend eingibt.
Wenn du in dem Feld 1.10. eingibst, erscheint das Daum 1.10.2013 und das bleibt auch so.
Ev. muß das Feld als Datumsfeld formatiert werden.
Nur bei Feldbefehlen wie (heute) wird automatisch berechnet.

Gruß Heinz

Hallo Dominic,

ich habe eine recht einfache Frage, zu der ich aber keine
zufriedenstellende Antwort googlen konnte:

warum wohl? Deine Einschätzung ist einfache Frage. Muß das deshalb auch so sein, vllt. sehen das andere annerster. Es ist auf jeden Fall lösbar, wie oft bietet da EXCL/Vba verschiede Wege an.

Ich habe eine recht aufwendige Tabelle programmiert. Jetzt
gibt es einige Felder, die ein Datum enthalten, das bei jedem
Öffnen dynamisch berechnet wird.

Wer arbeitet mit dieser Tabelle? Nur du, 2 Mitarbeiter, 50 MA, gar Kunden *igitt* :smile:?
Wenn der Kreis klein ist bedeutet das leichten Aufwand sich eine Tastenkombination zu merken oder mit Post-It an den PC zu kleben.

In Excel gibt es zwei mir bekannte Tastenkominationen. Mit der einen fügt man das Datum ein, mit der anderen die Uhrzeit, kann beim zweiten auch sein datum und Uhrzeit.

Für das Datum ist es die Tastenkombi:
Strg+Punkt

Für das andere ist auch Strg + irgendwas, irgendwas ist in dem Bereich des Kommas auf der Tastatur zu finden *glaub*
Probiere rum, zur Not zeigt die Hilfe auch die Tastenkombis an.

Wäre das für dich praktikabel?
Das eingetragene Datum ist das fest.

Dann gibt es ein Feld oder Klickbutton oder so, dass die
werte, die heute drin stehen „gesperrt“ werden und beim
morgigen öffnen nicht wieder neu berechnet werden.

Geht auch aber sag erstmal was zu Strg+.

Ich hoffe ich habe mich verständlich ausgedrückt.

Hast du. Aber wenn es doch ein Button, also Vba sein wird, hast du deine XL-Version angegeben? Wenn ja und ich sehs halt nicht im Antwortfenster so isses oky, dann schau ich in deine Anfrage, ansonsten sage sie bitte.

Gruß
Reinhard

Hallo,
es geht auch, heute und heute+1 usw einzugeben,
dann alle kopieren einfuegen nur Werte.
Gruss Helmut

Hallo Dominic,

das Datumsfeld zu sperren scheint mir nicht so sinnvoll zu sein. Denn dann ist es auch gesperrt, wenn Du es aktualsiert haben willst.
Aber was Du machen koenntest:

  • such Dir ein Feld (an einer für Dich passenden Stelle aus) z.B Zelle C1, wo Du „=WENN(D1=0;HEUTE();D1)“ drin stehen hast, da steht dann immer das heutige, also das aktuelle Datum drin.
  • dann verlinkst Du alle Zellen, in denen Du bisher „heute()“ drin stehen hattest mit genau dieser Zelle (d.h. dein aktuelles Datum wird immer nur aus dieser einen Zelle gezogen), z.B. wenn in Zelle H29, oder X50 „=Heute ()“ drin stand , dann ersetzt Du genau das mit einfach =C1
  • und falls Du jetzt einmal einen Ausdruck an einem späteren Tag haben willst (mit dem zuückdatierten „heutigen Datum“, dann tippst Du einfach Dein Wunschdatum in Zelle D1 hinein (ansonsten lasst Du D1 einfach leer).

Ich hoffe, ich habe Deine Fragestellung richtig verstanden, wenn icht, dann lass es mich wissen!

Mfg
Martin

Hallo Martin,

das Datumsfeld zu sperren scheint mir nicht so sinnvoll zu
sein. Denn dann ist es auch gesperrt, wenn Du es aktualsiert
haben willst.

spielt keine Rolle wenn eh Vba-Buttons im Spiel sind.

  • such Dir ein Feld (an einer für Dich passenden Stelle aus)
    z.B Zelle C1, wo Du „=WENN(D1=0;HEUTE();D1)“ drin stehen
    hast, da steht dann immer das heutige, also das aktuelle Datum
    drin.

Korrekt. Ist aber D1 leer, von mir aus gleich 0, mal ohne Prüfung annehm, und das so bleibt steht in C1 quasi immer Heute(), bei jeder Mappenöffnung.
Das kennt der Anfrager und will ja grad das nicht mehr.

Wurde manuell in D1 ein Datum eingetragen, in der Tat das bleibt bestehen egal an welchem Tag man dann die Mappe öffnet. Aber will der Anfrager das? Ich glaub nicht. Ich glaub er möchte daß beim Öffnen das aktuelle Datum von mir aus mit Heute() eingetragen wird und dann fixiert wird.

Die Mappe ist wohl eine Art Vorlage. Naja, alles Mutmaßungen, aufklären kann das nur der Anfrager denn dazu gibt es doch einige Varianten wie was warum geschehen soll.

Irrungen vorbehalten

Gruß
Reinhard

Hallo nochmal an alle,

ohohoh, DANKE erstmal, dass Ihr euch so viel Mühe gebt mein Problem zu lösen. Das ist sehr nett.

Ich merke schon, dass ich mich entgegen meiner Annahme doch nicht klar ausgedrückt habe. Deshalb möchte ich die Situation am realen Beispiel erklären und dazu auf die ein oder andere offene Frage eingehen.

  1. Excel Version ist 2013

  2. Reinhart hat das Problem richtig gedeutet!

  3. Ich schreibe diese Tabelle für meine Freundin, arbeiten wird allerdings ihr Chef damit.

Es geht um einen „Schichtplan“ für Mitarbeiter im Einzelhandel. Darin sind sechs Spalten, für jeden Wochentag eine. Es gibt insgesamt 52 Tabellen (für jede KW eine). Das muss ich machen weil die Tabellen untereinander auch Informationen austauschen. Der Plan wird immer am Samstag vor der jeweiligen Arbeitswoche geschrieben. Beim öffnen der Tabelle von z.B. KW1 stehen über den 6 Spalten die jeweiligen Daten von Montag bis Samstag der nächsten Woche.

Leicht vereinfacht sieht das für Montag so aus: =heute()+2. Für Dienstag so: =heute()+3 usw.

Der Plan wird geschrieben, ausgedruckt und abgespeichert. Wenn er jetzt ein anderes mal, z.B. am Sonntag, nochmal geöffnet wird, sind die Daten Falsch, nämlich um einen Tag „verrutscht“, logisch.

Deshalb möchte ich, dass nach dem Schreiben am Samstag mit einem Klick die Datumsfelder „fixiert“ werden. Für die nächste KW gibt es ja dann eine neue Tabelle.

Herzlichen Dank und die besten Grüße!

ungewöhnlich
Hallo Dominic,
Du schriebst:

ohohoh, DANKE erstmal, dass Ihr euch so viel Mühe gebt mein
Problem zu lösen. Das ist sehr nett.

Das wird wohl auch so bleiben, wenn Du freundlich fragst und auf Rückfragen reagierst :smile:


3. Ich schreibe diese Tabelle für meine Freundin, arbeiten
wird allerdings ihr Chef damit.

Arrgs. Das klingt nach Risiko :wink:
Na, zum Thema und warum ich Dir schreibe:

Es geht um einen „Schichtplan“ für Mitarbeiter im
Einzelhandel. Darin sind sechs Spalten, für jeden Wochentag
eine. Es gibt insgesamt 52 Tabellen (für jede KW eine). Das
muss ich machen weil die Tabellen untereinander auch
Informationen austauschen.

Das sehe ich so noch nicht als zwingend notwendig an mit 1 Tabelle je Woche. Wird sehr unübersichtlich.
Man kann ohne Weiteres Jahrzehnte tageweise untereinanderschreiben. Die Möglichkeit des Datenaustauschs zwischen einzelnen Zeilen wird eher einfacher. Zum Auswählen bestimmter Zeitbereiche gibt es ja Filter und Sortierungen.
Dann hast Du Vergangenheit, Gegenwart und Zukunft immer griffbereit und kannst Dir aussuchen, was Du sehen / drucken willst.
Zu jedem Datum gibt Dir Excel auch den Wochentag an.
Du müsstest also nur ein Datum fest eintragen. Alle anderen werden daraus errechnet wie auch z. B. Wochentage.

Der Plan wird immer am Samstag vor
der jeweiligen Arbeitswoche geschrieben.

So etwas ändert sich manchmal unvermittelt …

Beim öffnen der
Tabelle von z.B. KW1 stehen über den 6 Spalten die jeweiligen
Daten von Montag bis Samstag der nächsten Woche.

Schön, so etwas kann man durchaus in ein anderes Blatt auslagern. Die Daten holt sich dieses dann aus der großen Tabelle.

Leicht vereinfacht sieht das für Montag so aus: =heute()+2.
Für Dienstag so: =heute()+3 usw.

Der Plan wird geschrieben, ausgedruckt und abgespeichert. Wenn
er jetzt ein anderes mal, z.B. am Sonntag, nochmal geöffnet
wird, sind die Daten Falsch, nämlich um einen Tag
„verrutscht“, logisch.

eben.

Deshalb möchte ich, dass nach dem Schreiben am Samstag mit
einem Klick die Datumsfelder „fixiert“ werden. Für die nächste
KW gibt es ja dann eine neue Tabelle.

Überdenke bitte noch einmal Dein GrundKonzept, damit Du nicht irgendwann selbst den ÜberBlick verlierst. ( Passiert leicht, wenn Freundin und/oder deren Chef Dich mit Problemen konfrontieren )

Freundliche Grüße

Thomas

Hallo Dominic,

ohohoh, DANKE erstmal, dass Ihr euch so viel Mühe gebt mein
Problem zu lösen. Das ist sehr nett.

Thomas hat es ja schon gesagt, wie es in den Wald hineinschallt…
Hier reingerotzte unhöfliche Anfragen, meist noch mit kaum Informationen die man bräuchte um überhaupt antworten zu können haben vom Start aus miese Karten.

Ich merke schon, dass ich mich entgegen meiner Annahme doch
nicht klar ausgedrückt habe.

Das ist normal, Helfer in einem Fachbrett haben einen anderen Wissenshintergrund jetzt z.B. von Excel. Du hast deine Tabelle vor dir und möchtest da was, nur du weißt was genau. Alles normal. Ich hab z.B. nach der Version gefragt. Du kannst vllt. gar nicht wissen warum. Der Grund ist simpel, je nach Version sind andere Vorgehensweisen erforderlich.

Deshalb möchte ich die Situation
am realen Beispiel erklären und dazu auf die ein oder andere
offene Frage eingehen.

Ich gebe zu, inclusive dieses Beitrages kann man es schon lösen.
Aber das birgt noch Unsicherheit.
Und jaaaa, reales Beispiel ist immer am besten. Und am effektivsten. Denn dann hats du keinerlei Umsetzungsprobleme.

Und, ein reales Beispiel vermeidet sinnlose Zeitverschwendung derjenigen die dir helfen wollen. Du lädst eine Beispielmappe hoch die in der Tabellenstruktur exakt dem Original entspricht mit 3 Blättern die drei KWs entsprechen.

Dann sparen sich 1,2,5,10 Helfer die Zeit sich das jeder für sich nachzubauen was du so gesagt hast. Wenn du für die Beispielmappe 5 min brauchst, na und. Ist jawohl kein Akt für dich. Aber bei 10 Hilfswilligen erspart das 10 x 5 min unnötige Zeit.

  1. Reinhart hat das Problem richtig gedeutet!

habe ich gut geraten, Domini K *grins*

  1. Ich schreibe diese Tabelle für meine Freundin, arbeiten
    wird allerdings ihr Chef damit.

ohoh, also potentielll von DAU auszugehen.
Btw. Strg+Punkt kriegt er nicht gebacken? Nur mal so frag da noch unbeantwortet.

Leicht vereinfacht sieht das für Montag so aus: =heute()+2.
Für Dienstag so: =heute()+3 usw.

Deshalb meine Frage nach Strg+Punkt. Gibt man derart das aktuelle Datum ein in Zelle
C3, dann kann man in D3 schreiben =C3+1, in E3 =D3+1, usw. o.ä.

Achja, zum Hochladen der Mappe könntest du file-upload, s. FAQ:2606 benutzen.

Habe fertig.

Gruß
Reinhard

Hallo Thomas, ReinharD :wink:, und alle anderen Mitleser,

ok mir scheint es als ob dieses „Minifeature“ zu viel Aufwand in Anspruch nimmt. Vielen Dank für etwaige andere Lösungsansätze etc. Natürlich ist das Konzept mittlerweile fix und fertig, abgenommen und praktisch nicht änderbar. Ich finde es sehr gut, meine Freundin und wie ich gerade gehört habe Ihr Chef auch. Es ist einfach, intuitiv und bei der Menge an Mitarbeitern, da bin ich mir sicher, eine, unter anderem, sehr einfache und übersichtige Sache.

Natürlich rechne ich Eure Tipps sehr hoch an. Ein Beispiel:

Thomas schreibt, dass sich der Zeitpunkt des Schreibens dieses Plans manchmal ändert.

Das ist klar. Selbstverständlich habe ich für die 5 % in denen das passiert etwas Abseits, ein Datumsfeld eingerichtet, dass mit dem Datum des ersten Arbeitstages in der Wunschwoche gefüttert werden kann. Die Funktion im „Montagsdatumsfeld“ sieht daher auch so aus:

=WENN($Y$15=0;HEUTE()+2;$Y$15)

Deshalb habe ich auch geschrieben, dass die Formel in meinem vorherigen Post „leicht vereinfacht“ war.

Auch die Strg+Punkt Geschichte ist ein guter Tipp, den ich auch noch nicht kannte. Allerdings für mein derzeitiges Problem nicht zu gebrauchen, zumindest nicht für mich ersichtlich.

Ich werde dem Anwender jetzt erklären, dass er bei einem erneuten Ausdruck. Halt in mein dafür entworfenes Datumsfeld einschreiben soll respektive ich diese komplette automatische Zählfunktion rausnehme und er einfach jedes Mal dieses Feld verwenden soll. Das bläht das ganze System nicht so stark auf und die Energie die da rein gesteckt wird bleibt überschaubar.

Vielleicht fällt mir ja in einer kreativen Minute noch einmal ein ganz anderer Lösungsweg ein. In diesem Fall werde ich das natürlich hier posten.

Vielen Dank nochmal für Eure Mühen und die besten Grüße!

Dominic