
Ich habe erhebliche Probleme, eine einfache Formel in Excel zu erstellen. Stellen Sie sich vor, ich habe eine Tabelle mit Schülern und ihren aktuellen Noten. Ich hätte gerne eine Formel, die automatisch erkennt, wie viel Zeit seit dem Basisdatum der Erstellung der Tabelle vergangen ist, und die die Noten jedes Schülers um eins erhöht, je nachdem, wie viele Jahre seit dem Basisdatum vergangen sind. Ich möchte, dass die Noten basierend darauf erhöht werden, wie oft der 1. Juni schon vergangen ist, da dies ungefähr der Zeitpunkt ist, an dem die Sommerferien beginnen und man die Schüler als der nächsten Klasse zuordnen kann.
Einige Dinge, die ich versucht habe, und einige Parameter, die ich einstelle:
Ich möchte die Möglichkeit haben, die Klassenstufe mit „nicht in der Schule“ beginnen zu lassen, dann „Vorschule 3“, „Vorschule 4“, „Kindergarten“, „1.“, „2.“, … „12.“, und schließlich „Abitur“ folgen zu lassen.
Ich habe jeder Schulnote einen ganzzahligen Wert zugewiesen, sodass der ganzzahlige Wert erhöht werden kann. Ich habe 1 für „nicht in der Schule“ und 2 für „Vorschule 3“ zugewiesen und so weiter, bis „Highschool-Abschluss“ 17 ist.
Im Wesentlichen weise ich jedem Schüler diesen Basiswert für die Klasse zu, in der er sich aktuell befindet, wenn die Tabelle erstellt wird.
Wenn ich diese Tabelle in Zukunft öffne, soll die Formel berechnen, wie lange seit dem Erstellungsdatum vergangen ist, wie oft dies den 1. Juni bedeutet hat und wie oft jede Ganzzahl der akademischen Note für jeden Schüler erhöht werden soll, was sich dann in der Zeichenfolge widerspiegelt, die die Ganzzahl darstellt.
Ich habe Probleme, irgendetwas in Excel zu „inkrementieren“. Excel scheint diese Funktion nicht integriert zu haben. Ich versuche, die Verwendung von VBA zu vermeiden.
Der Einfachheit halber sagen wir:
mein Sortiment aller Noten heißt "Noten",
mein Bereich aller ganzzahligen Notenwerte heißt "Notenwerte",
mein Bereich der Grundnoten der Schüler heißt "Anfangsnote",
und mein Basisdatum ist der 01.01.2024.
Antwort1
Erstens speichert Excel (und alle anderen Tabellenkalkulationen?) Daten als Tageszählung ausgehend von einem „Basisdatum“. Der Dezimalteil derselben Zahl gibt an, wie weit in diesem Datum die zugehörige TagesZEIT liegt:
Geben Sie 0
in eine beliebige Zelle ein und ändern Sie Cell formatting
(STRG+1) in , um Date
das Basisdatum anzuzeigen.
https://help.libreoffice.org/latest/en-US/text/scalc/01/04060102.html- hat alle mit Datum und Uhrzeit verbundenen Funktionen aufgelistet.(Ich weiß nicht, ob das Gleiche für Excel verfügbar ist).
Die erste optionale Möglichkeit, die Sie ausprobieren können (sofern das Ergebnis gut genug ist), ist einfach:
=INT( (TODAY()-A1) / 365.25 )
... wobei 365,25 die durchschnittliche Anzahl von Tagen pro Jahr ist, vorausgesetzt, Sie haben ein „Startdatum“ in A1.
Dadurch erhalten Sie die Anzahl der Jahre, die zwischen den Daten vergangen sind.
Möglicherweise müssen Sie ein paar Anpassungen vornehmen, um das gewünschte Ergebnis für Ihre Anwendung zu erzielen.
Negative Werte wären beispielsweise „nicht in der Schule“, 0 und höher geben an, wie weit die Person in der Schule fortgeschritten ist.
Beachten Sie auch, dass die TEXT()
Funktion Ihnen eine benutzerdefinierte (Zeichenfolgen-)Darstellung eines Datums liefern kann; sie verwendet dieselbe Formatierungszeichenfolge wie Cell formatting
- also wie showHier.
Wenn Sie etwas nachdenken, können Sie möglicherweise eine präzisere Formel finden (falls diese wirklich erforderlich ist).