
Ich habe ein Formular mit 3 Spalten
Date Item Cost
10/feb/2022 pc 100
Ich möchte die Daten über die Schaltfläche „Formular“ eingeben, die ein Popup öffnet, um ganz einfach einen neuen Datensatz zu erstellen, aber ich möchte nicht jedes Mal das heutige Datum manuell eingeben (nur Uhrzeit und Kosten). TODAY() funktioniert natürlich nicht, da am nächsten Tag alle vorherigen Daten auf den heutigen Tag geändert werden.
Die hervorgehobene Datumsspalte sollte automatisch mit dem heutigen Datum (11. Februar 2002) ausgefüllt werden.
Antwort1
Es gibt eine Möglichkeit, die Datenüberprüfung zu verwenden, um die Antwort von =TODAY() effektiv zu kopieren und automatisch als Wert in eine Zelle einzufügen. Legen Sie eine Referenzzelle oder einen benannten Bereich gleich =NOW() oder =TODAY() fest, deren Wert jedes Mal automatisch aktualisiert wird, wenn Sie eine Zelle bearbeiten (d. h. jedes Mal, wenn die Tabelle neu berechnet wird). Stellen Sie nun das Datenband > Datenüberprüfung für die Datumseingabezelle ein, wählen Sie den TypListeund beziehen Sie sich auf unsere Referenzzelle. Dies ergibt eine Dropdown-Liste mit der aktuellen Uhrzeit/dem aktuellen Datum als einzige Option in der Dropdown-Liste. Die Uhrzeit/das Datum sollten der zuletzt ausgelösten Blattneuberechnung entsprechen. Sobald Sie aus der Dropdown-Liste ausgewählt wurden, wird der Uhrzeit-/Datumswert als Wert in die Dateneingabezelle kopiert und „gesperrt“, sodass er nicht mehr aktualisiert wird.
Ich bin mir nicht sicher, ob Sie die Datenüberprüfung als Teil des Dateneingabeformulars verwenden können, aber Sie können es versuchen. Andernfalls müssen Sie die Daten direkt in die Zellen eingeben oder gemäß Rajeshs Vorschlag VBA verwenden, um Ihr eigenes Dateneingabeformular zu codieren.