Zeitstempel programmieren in Google Tabellen
Auf dieser Seite zeige ich Euch ein kleines Script mit dem Ihr ganz einfach einen Zeitstempel in Eurer Google Tabelle mit einem Script erzeugen könnt.
Dieses Script wird durch einen Klick auf einen Button aufgerufen und erzeugt dann in der aktuellen Zelle einen Zeitstempel.
Ihr könnt das Script natĂŒrlich Euren BedĂŒrfnissen entsprechend anpassen. Im unteren Teil erklĂ€rte ich kurz den Aufbau des benutzten Zahlenformats fĂŒr das Datum.
Weiter unten könnt Ihr Euch das Video – Tutorial entweder hier oder bei YouTube anschauen um zu sehen wie Ihr das mit dem Script genau machen mĂŒsst und wie Ihr das in Eurer Tabelle ausfĂŒhren könnt. Ich zeige Euch dort auch wie Ihr schnell mit dem Zeichnen – Tool einen Button erzeugen könnt mit dem Ihr das Script dann ganz einfach ausfĂŒhren könnt.
Hier das Zeitstempel – Script zum kopieren:
function zeitStempel(){ // aktives Tabellenblatt der Variablen tabellenblatt zuweisen var tabellenblatt=SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // aktuelles Datum als neues Objekt mit new erzeugen var aktuellerZeitpunkt=new Date(); // das Format fĂŒr die Ausgabe festlegen. Hier könnt Ihr Eure Ănderungen vornehmen. var zeitStempelFormat="dd.mm.yyyy hh:mm:ss"; // das Datum in die aktive Zelle schreiben und das Format entsprechend anpassen. tabellenblatt.getActiveCell().setValue(aktuellerZeitpunkt).setNumberFormat(zeitStempelFormat); }
Die Benutzung des Scriptes ist natĂŒrlich wieder auf eigene Gefahr.
Hinweise zum Datumsformat:
Das Datum könnt Ihr ĂŒbrigens entsprechend Euren BedĂŒrfnissen anpassen. Ihr seht ja das ich in meinem Beispiel Script folgendes Format genommen habe:
dd.mm.yyyy hh:mm:ss
dd
Tag des Monats mit fĂŒhrender 0, also von 01 bis 31.
mm
Monat mit fĂŒhrender 0, also von 01 bis 12.
yyyy
Vierstellige Jahreszahl. Wollt Ihr z.B. nur eine zweistellige Jahreszahl dann gebt statt yyyy einfach nur yy ein.
hh
Stunden mit fĂŒhrender Null, also 00, 01, 02 … 21, 22, 23,.
mm
Minuten mit fĂŒhrender Null, also von 00 bis 59.
ss
Sekunden mit fĂŒhrender Null, also von 00 bis 59.
In dem Beispiel verwende ich, so wie man das ja auch standardmĂ€Ăig auch macht, Punkte fĂŒr die Datumsangabe und Doppelpunkte fĂŒr die Uhrzeit.  Ihr könnt das aber natĂŒrlich auch so Ă€ndern wie Ihr das haben wollt. In anderen LĂ€ndern kann die Reihenfolge z.B. auch völlig anders sein und als Trennzeichen wird da vielleicht statt dem Punkt ein Bindestrich gesetzt.
Viel SpaĂ dabei đ
Euch gefÀllt die Datei und Ihr wollt Euch unbedingt bedanken?
Hier ist meine AMAZON – Wunschliste [HIER KLICKEN] đ
44 Comments
Hallo!
Ich habe dieses Skript so ĂŒbernommen, bekomme aber folgenden Fehler:
Sie haben nicht die erforderliche Berechtigung zum Aufruf von setValue. (Zeile 13).
Ich wollte folgendes machen:
= WENN(ISTLEER(G2);;zeitStempel())
Damit ich einen Zeitstempel erhalten, sobald etwas in die Zelle eingetragen wird.
Könnten sie mir helfen?
Hi Leif, ich denke da muss in der Funktion noch etwas geÀndert werden wenn das so funktionieren soll. Die letzte Zeile vom Script gibt ja die Werte in der momentan aktiven Zelle aus.
Wenn man das als Funktion mit einbauen möchte braucht man einen RĂŒckgabewert. Das heiĂt return "irgendwas";
Die Zeilen wĂŒrden im Grunde genommen schon reichen.
function zeitStempel(){
var aktuellerZeitpunkt=new Date();
return aktuellerZeitpunkt;
}
Das Format legst Du ja schon direkt in der Tabelle selbst fest also Datum mit Uhrzeit. Ob das jetzt allerdings so funktioniert wie es geplant war weiĂ ich nicht.
Noch einfacher geht es natĂŒrlich mit:
= WENN(ISTLEER(A1);;JETZT())
Viele GrĂŒĂe
Chris
Das Problem, dass google seinen eigenen Script nicht autorisiert habe ich ebenfalls.
JETZT() kommt nicht in Frage, da es die vorherigen Daten aktualisiert, was nicht Sinn der Sache ist.
Wie kann ich einfach das aktuelle Datum einmalig eintragen, ohne dass es aktualisiert wird ?
Ich befĂŒrchte ich werde die Antwort eventuell verpassen, ansonsten habe ich eine Mail đ
flo_heyer@gmx.de
Danke !
Das kommt natĂŒrlich auch auf das an was Du machen willst und wie das ganze bei Dir aufgebaut ist. Normalerweise hĂ€tte ich jetzt auch gesagt, bevor Du dort eine Formel eintrĂ€gst die nur das aktuelle Datum eintragen wĂŒrde, kannst Du das Datum natĂŒrlich auch gleich manuell dort eintragen, da der Wert sich ja anschlieĂend auch nicht Ă€ndert.
Bei einer Standard Funktion wĂŒrde sich das vermutlich immer aktualisieren, da fĂ€llt mir auch nichts weiter ein. Bei der Programmierung könnte man das eventuell so machen das in der Funktion onOpen (oder anderem Event Typ) auf die eine Zelle zugegriffen wird. Hier wird dann nur ĂŒber eine IF Abfrage gecheckt ob die Zelle leer ist oder nicht. Ist die Zelle leer wird das aktuelle Datum dort eingetragen. Durch die IF Abfrage dann auch nur einmalig.
Hallo, diese Formel funktioniert aber nur bei "Zeit Stempel programmieren in Google Tabellen". Wie lautet die Formel bei Excel (Makros)
Freundlichen GrĂŒĂen,
D. Kannengieser
Super Toptorial – vielen vielen Dank. Kleines Problem: Ich bekomme eine falsche Uhrzeit. Was kann ich da tun? VG Thomas
Schau mal ob in
"Datei" -> "Tabelleneinstellungen" -> Allgemein -> "Zeitzone"
die richtige Zeit eingestellt ist (GMT+01:00 Berlin)
Wenn dort alles stimmt kannst Du noch ĂŒber folgende Funktionen Anpassungen vornehmen:
setSpreadsheetTimeZone()
oder ĂŒber
Utilities.formatDate(new Date(), "GMT+01:00", "'dd.MM.yyyy'").
Perfekt, Du bist ein Engel! – falsche Zeitzone war die Ursache
Super, freut mich dass es geklappt hat đ
Hallo,
bei mir wurde die Uhrzeit um 3 Stunden spÀter gezeigt.
Falsch : 2018-01-23 04:19:43
Aktuell ist : 2018-01-23 01:19:43
Wie kann ich Àndern ?
Danke im Voraus
Schau mal bei Dir in den Einstellungen.
Datei – > Tabelleneinstellungen – > Zeitzone.
Wenn nicht muss noch im Script selbst die UTC Zeit angepasst werden. Schau aber erst einmal nach ob es schon an den Einstellungen liegt.
Vielen Dank – es hat geklappt.
Hi, super Sache.Leider ist die Funktion in der Android app dann nicht mehr verfĂŒgbar. Wie kRiege ich die da ans laufen? GrĂŒĂe, Jannis
Hi Jannis, soweit ich weiĂ kannst Du die Funktionen nicht ĂŒber Buttons steuern. Du kannst in den Apps die Bilder nur verĂ€ndern aber keine Funktionen aufrufen. Die Apps sind leider momentan noch ziemlich eingeschrĂ€nkt.
Du kannst aber versuchen Funktionen ĂŒber onEdit (also beim Ăndern von Zellen) oder auch beim Ăffnen der Tabelle (onOpen) auszufĂŒhren.
Ansonsten eventuell noch zeitlich gesteuert ĂŒber sogenannte Trigger(z.B. stĂŒndlich, minĂŒtlich etc.):
https://toptorials.com/funktion-zeitlich-gesteuert-ausfuehren-google-tabellen-script/
Hi Chris, vielen Dank. Schade, dass die Apps noch nicht so weit sind.
GrĂŒĂe,
Jannis
Ja, ich hoffe auch dass es bald funktioniert. WĂ€re schon cool wenn man auch alles vom Handy aus machen kann.
Viele GrĂŒĂe
Chris
Hallo,
ich habe meine GoogleTabelle mit Open as App verknĂŒpft, um die Tabellen bequem ĂŒber eine App zu bearbeiten.
WÀre es möglich, einen Zeitstempel zu erstellen, wenn in ein Feld ein Wert eingetragen wird?!
Also wenn in C4 ein Wert eingetragen wird soll in D5 das aktuelle Datum und die Uhrzeit automatisch erstellt werden.
LG Tom
Versuche das mal mit dieser Formel:
function onEdit(e){
if(e.range.getRow()==4 && e.range.getColumn()==3)
SpreadsheetApp.getActiveSheet().getRange("D5").setValue("Dein Wert");
}
Achte aber darauf dass die AnfĂŒhrungszeichen richtig gesetzt sind. Die werden hier manchmal anders dargestellt.
FĂŒr das Datum hast Du ja sicher schon die Tutorials gefunden đ
Ich wĂŒrde gerne das Gleich machen. Muss diese Formel an das Zeitstempel Script angefĂŒgt werden? Wenn ja, wo? Habe mal nur folgendes eingetragen.
function onEdit(e){
if(e.range.getRow()==4 && e.range.getColumn()==3)
SpreadsheetApp.getActiveSheet().getRange("D5").setValue("dd.mm.");
}
Dann erhalte ich aber folgende Fehlermeldung
TypeError: Cannot read property "range" from undefined. (line 2, file "Code")
ich kapier ehrlich gesagt nicht, woher dieses e kommt. Was soll das darstellen?
Sorry bin kompletter Noobie in Sachen Coding đ
Kein Problem, jeder hat mal angefangen đ
Ich bin ĂŒbrigens auch kein Profi und nur Hobby-Programmierer (sage ich auch in einigen Video-Tutorials extra dazu).
Ich habe das Script etwas geĂ€ndert. Es wird dennoch ein Fehler angezeigt, wenn Du das Script im Script Editor ausfĂŒhrst. Es funktioniert aber trotzdem.
Das hĂ€ngt damit zusammen dass Du mit dem Editieren in einer Zelle die Funktion onEdit immer automatisch aufrufst und dabei wird diese onEdit-Funktion mit einem Parameter aufgerufen. Dieser Parameter ist eine Art Objekt welches viele Informationen enthĂ€lt die abgefragt werden können. Wenn Du Dich mit Funktionen beschĂ€ftigst, dann wirst Du das schnell feststellen. Du kannst dann andere Funktionen aufrufen und dabei bestimmte Parameter ĂŒbergeben. Somit kannst Du Daten an Funktionen ĂŒbermitteln. Der Fehler im Script-Editor tritt auf, weil Du beim Aufrufen ĂŒber den Script-Editor kein Objekt ĂŒbermittelst und natĂŒrlich das Script keine Zelleninformationen enthĂ€lt. Das passiert aber wenn Du eine Zelle in der Tabelle editierst.
Jetzt zum Code:
function onEdit(e) {
var sheet = e.source.getActiveSheet();
var r = e.source.getActiveRange();
if (r.getRow() == 4 && r.getColumn()==3) {
sheet.getRange("D5").setValue("Dein Datum");
}
}
Hier wird onEdit sozusagen aufgerufen und auch ein Parameter ĂŒbergeben. Dieser ĂŒbergebene Parameter kann jetzt ĂŒber das e ausgelesen werden. Du kannst ĂŒbrigens statt dem e auch einen anderen Buchstaben oder ein Wort benutzen. allerdings musst Du den Rest der Funktion dann entsprechend anpassen.
Das mit dem Datum musst Du ebenfalls noch etwas anpassen.
Hi,
wie kann ich das auf einen Bereich ausweiten?
also das in D5 das Datum eingetragen wird, wenn sich in einer oder mehrerer Zellen eines Bereiches zB D6:E8 etwas Àndert.
GruĂ
Peer
Hi Peer, schau Dir mal diese Tutorials an:
Zeitstempel mit Benutzer als Notiz (Google Tabellen) Script
Zeitstempel mit Ablaufzeitpunkt programmieren (Google Tabellen Script) Snippet
Interessant könnte auch dieses Tutorial fĂŒr Dich sein damit Du das ganze kombinieren kannst:
Zellen vergleichen & markieren / Array (Google Tabellen / Spreadsheets) Script
Viele GrĂŒĂe
Chris
Hallo,
das ist vom Prinzip ein geniales Script … wenn da nicht ein paar kleine WĂŒnsche wĂ€ren.
Ich sitze jetzt gut eine Woche daran und verstehe jetzt nichts mehr.
Mein Wunsch ist es das die Zeit zB in Zelle B2 eingetragen wird. Beim nÀchsten aktivieren des Buttons in Zelle B3 usw.
Also das man alle Zeiten untereinander hat und nicht ĂŒberschreibt. Auf Excel habe ich das so hinbekommen nur hier bin ich Machtlos.
Und dann noch eine Frage die mit diesem Thema nicht wirklich etwas zu tun hat.
Kann man die eigene E Mail Adresse auslesen? Besser erklÀrt gibt es eine Variable die diese automatisch eintragen kann?
Viele Dank im Voraus!
Hallo Frank,
das geht auf mehrere Arten. Je nachdem ob Du das auf einem separaten Tabellenblatt hast oder irgendwo in einer Spalte.
Im separaten Tabellenblatt kannst Du die Funktion getLastRow benutzen. In einer Spalte ist es etwas komplizierter. Da mĂŒsstest Du die Daten erst einlesen und schauen ab welcher Zelle kein Inhalt mehr vorhanden ist. Also durchlĂ€ufst Du die einzelnen Zellen in einem Array und sobald kein Eintrag mehr vorhanden ist kannst Du den Zeitstempel setzen.
Ein Beispiel wie man mit einem Array das machen könnte siehst Du hier:
https://toptorials.com/zellen-vergleichen-markieren-array-google-tabellen-script/
FĂŒr die Emailadresse kannst Du Dir mal dieses Script anschauen. Hier wird das als Notiz eingetragen:
https://toptorials.com/zeitstempel-mit-benutzer-als-notiz-google-tabellen-script/
Viele GrĂŒĂe
Chris
Hi
ich wĂŒrde gerne mit einem Doppelklick auf eine Zelle das Datum einfĂŒgen und wenn da schon was drin steht die Zelle leeren…
In Excel ist das ja einfach zu lösen:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("A1:A100")) Is Nothing Then Exit Sub
Cancel = True
If Target.Value = "" Then
Target.Value = Date
Else
Target.Value = ""
End If
End Sub
aber ich bin etwas ratlos wie ich das Doppelklick-Event hier ausfĂŒhren kann…wenn das ĂŒberhaupt möglich ist.
Ich wĂŒrde mich ĂŒber einen Tipp sehr freuen đ
Danke fĂŒr deine MĂŒhe.
MfG
Daniel
Das mit dem Doppelklick geht meines Wissens nicht. Du könntest aber eine Funktion basteln und so Ă€hnlich benennen. Wenn Du die Funktion so schreibst, dass die Zeile ausgelesen wird wo sich die aktive Zelle befindet brauchst Du nur noch die entsprechende Spalte festlegen wo sich das Datum befindet und den Eintrag ĂŒberprĂŒfen. Falls etwas drin steht dann die Zelle leeren ansonsten das Datum eintragen.
Diese beiden Tutorials könnten fĂŒr Dein Vorhaben auch interessant sein.
https://toptorials.com/aktive-zelle-auslesen-google-script/
https://toptorials.com/zeitstempel-mit-benutzer-als-notiz-google-tabellen-script/
Viele GrĂŒĂe
Chris
Besteht denn auch die Möglichkeit mehrere Zellen zu markieren das Makor zu aktivieren und er Macht das Datum in alle markierten Zellen?
Wie muss ich die Formel da umschreiben
Schau Dir mal die Möglichkeit mit rangeList an.
Hier ein Beispiel das Du aber noch umschreiben musst:
function markierteZellenBeschriften(){
//var myColor="#00ff00"; // GrĂŒn
var ss=SpreadsheetApp.getActiveSheet();
var rangelist=ss.getActiveRangeList();
//rangelist.setBackground(myColor)
rangelist.setValue("MeinEintrag");
}
danke habs hinbekommen idem ich einfach nur Active Range statt Active Cell reingemacht habe.:
// das Datum in die aktive Zelle schreiben und das Format entsprechend anpassen.
tabellenblatt.getActiveRange().setValue(aktuellerZeitpunkt).setNumberFormat(zeitStempelFormat);
}
Gibts denn ne Möglichkeit statt dem Datum dd.mm.yyy die Kalenderwoche des aktuellen Tags auszugeben also aktiviere das makro und er gibt in der Zelle "32" fĂŒr KW 32 aus?
Und eine weitere Frage gibts die Möglichkeit das Makro in eine If Funktion zu integrieren. HeiĂt zum beispiel wennn Zelle "A3" mit einem namen ausgefĂŒllt wird kommt in Zelle B3 das aktuelle Datum als fester Zeitstempel. Ist A3 leer ersheint nichts in B3
Schön dass Du selbst eine Lösung gefunden hast.
Die letzte Frage kannst Du Dir selbst beantworten indem Du das einfach mal ausprobierst đ
Gibts auch die Möglichkeit als Datumsformat die KW auszugeben ?
Schau Dir mal die Möglichkeiten mit setFormula an.
Könnte dann in etwa so etwas sein:
setFormula('=ISOWEEKNUM(DATE(2019;10;10))');
Tolles Scrip, tolle Anleitung. Vielen Dank!
Ich habe allerdings das Problem, dass ich auf dem Smartphone nicht weiĂ, wie ich den Button drĂŒcken soll weil dabei der Fokus auf die Zelle verschwindet. Auf dem PC geht das wunderbar, aber ich möchte das gerne mit dem Smartphone benutzen.
GruĂ MrGolgi
Habe das Problem schon selbst (mit Deiner Hilfe) gelöst. Ăber onEdit wird in jedem Feld, in das SPACE eingegeben wird, jetzt der Zeitstempel eingefĂŒgt. Das geht auch unter Android.
// Funktion die bei einer Ănderung aufgerufen wird.
function onEdit(e){
// ruft die Hauptfunktion auf
infosAktiveZelle();
}
// Hauptfunktion
function infosAktiveZelle(){
// zuweisen der aktuellen Position in die Variable aktivePosition
var aktivePosition=SpreadsheetApp.getActiveRange().getA1Notation();
// zuweisen des Wertes von der aktuellen Position in die Variable aktivePositionWert
var aktivePositionWert=SpreadsheetApp.getActiveRange().getValue();
// aktuelles Datum als neues Objekt mit new erzeugen
var aktuellerZeitpunkt=new Date();
// das Format fĂŒr die Ausgabe festlegen. Hier könnt Ihr Eure Ănderungen vornehmen.
var zeitStempelFormat="hh:mm:ss";
if(aktivePositionWert==" "){
// Ausgabe in der aktuellen Zelle wenn Eingabe space war
SpreadsheetApp.getActiveSheet().getRange(aktivePosition).setValue(aktuellerZeitpunkt).setNumberFormat(zeitStempelFormat);
}
}
GruĂ MrGolgi
Hi Chris,
zunĂ€chst vielen Dank fĂŒr deine hilfreichen Tutorials.
Kannst du bitte ein Beispielcode einstellen wo bspw. der Zeitstempel nur in der selectierten Zelle eines bestimmten Bereiches eingetragen wird?
Zum Beispiel fĂŒr den Bereich A1:A10
GruĂ
Steffen
Hallo Chris,
das Script funktioniert nicht mehr richtig.
Der Zeitstempel erscheint immer in der ersten Tabelle in Zelle A1.
GruĂ Gerd
Hi Chris,
bei mir funktioniert der Zeitstempel auch nicht mehr richtig. Es wird die falsche Zeitzone herangezogen, obwohl die richtige in den Einstellungen von google sheets eingetragen ist (Berlin).
Ausgeworfen wird mir: "Mon Dec 20 2021 05:51:08 GMT-0500 (Nordamerikanische OstkĂŒsten-Normalzeit)"
(var aktuellerZeitpunkt=new Date();)
Hiermit bekomme ich die richtige Antwort:
var zeitStempel_CET = Utilities.formatDate(new Date(), "CET", "dd.MM.yyyy HH:mm:ss");
Hallo Eckhard,
ich habe das Script gerade nochmal ausgefĂŒhrt und bei mir funktioniert das weiterhin einwandfrei.
Danke fĂŒr den Hinweis (vor allem auch fĂŒr die anderen) mit Utilities.
Ich selbst konnte Dein Script jetzt nicht einsetzen und testen, weil ich schon seit lĂ€ngerem Probleme mit der Autorisierung von Scripten habe. Selbst der Google Support konnte mir da nicht weiterhelfen. Bei der AusfĂŒhrung von neuen Scripten (auf meinem Hauptaccount) wird dieses direkt blockiert ohne weitere Möglichkeiten etwas auszuwĂ€hlen. Deshalb habe ich auch den SpaĂ daran verloren. Ich bin froh dass ich keine Auftragsarbeiten fĂŒr groĂe Unternehmen ausgefĂŒhrt habe, das wĂ€re nĂ€mlich das volle Desaster gewesen.
Jedes mal aus meinen Hauptaccount herauszugehen um dann mit einem anderen Account in Google Tabellen zu arbeiten (was Scripte angeht) war dann nicht mehr mein Ding. Schade eigentlich, denn das arbeiten mit Scripten macht unheimlich viel SpaĂ.
Ich konzentriere mich derzeit auf ein komplett anderes YouTube Projekt da sich hierdurch völlig neue Perspektiven fĂŒr meine Zukunft auftun.
Ich hoffe auf Dein/Euer VerstÀndnis.
Trotzdem DANKE nochmal fĂŒr Deine MĂŒhe mit dem Snippet đ
Beste GrĂŒĂe
Chris
Hallo Chris!
Danke fĂŒr deine schnelle Antwort! Und ich wĂŒnsche dir natĂŒrlich VIEL ERFOLG mit deinem neuen Projekt! FĂŒr google Sheets in Deutsch ist das natĂŒrlich ein herber Verlust – du bist da Pionier und hilfst sehr vielen AnfĂ€ngern und Fortgeschritten ĂŒberhaupt in das Thema zu kommen.
Dein Problem habe ich auch mit der Authorisierung. Ich mache es dann einfach ĂŒber einen anderen Browser,. Mein eigenes in Firefox, Dirtte in edge als Beispiel. LĂ€uft.
Hallo Eckhard,
ja, das ist wirklich schade und ich hatte anfangs auch gesehen dass es in Deutschland nicht viele Tutorials gibt und ich da wirklich ein kleiner Vorreiter war.
Allerdings bin ich jetzt schon ziemlich enttÀuscht, dass ich selbst von Google keinen guten Support erhalten habe und sogar darauf hingewiesen habe dass ich sehr viele Tutorials in diesem Bereich erstellt habe.
Das Du ebenfalls ein Problem mit der Autorisierung hast ist interessant. Ich hatte ĂŒberall ĂŒber Google gesucht aber damals keine EintrĂ€ge fĂŒr solch ein Problem gefunden. Na zumindest weiĂ ich jetzt, dass ich nicht der einzige bin.
Jetzt kann ich Google Tabellen nicht mehr so ohne weiteres empfehlen, da die Blockierung fĂŒr eine Autorisierung eines Script ein absolutes NoGo ist. Da ich Google Tabellen aber nicht zwingend nutzen muss, ist das Thema fĂŒr mich abgegessen. Klingt hart aber ich habe zu viel Zeit investiert um das hinzubekommen und ĂŒber Ewigkeiten mit dem Support E-Mails ausgetauscht ohne zu einer Lösung zu kommen. Sogar Videos mit dem Ablauf habe ich fĂŒr den Support erstellt die den Fehler genau aufzeigen. DafĂŒr ist mir jetzt aber die Zeit einfach zu schade geworden und bestĂ€rkte mich nur noch den Fokus auf mein neues Projekt zu legen.
Mittlerweile habe ich sowieso schon wieder eine Menge vergessen đ
Ich wĂŒnsche Dir auf jeden Fall ebenfalls viel Erfolg und SpaĂ mit Deinen eigenen Projekten.
Beste GrĂŒĂe
Chris
Hallo, deine Tabelle ist sehr gut und habe es auch nachgemacht. Leider ist es so das ich es auch fĂŒr unterwegs brauche, wo ich in machen Kneipe keine Internet Verbindung ist. Ich habe mir eine Tabelle gebastelt wo ich in Excel 10 Stoppuhr eingerichtet habe und funktionieren auch alle.
Leider ist es so , das wenn ich egal welche starte und dann eine andere Starte (auch egal welche), das die andere stoppt. bin die Meinung das in der Makros, ein Befehl nicht vorhanden ist die es ermöglicht jede Stoppuhr Einzeln zu steuern ohne das eine automatisch Stoppt.
WĂŒrde gerne ihnen die Tabelle senden und wenn es möglich ist diese zu korrigieren, dann bitte ich ihnen mir einen kosten Vorschlag zu machen.
WĂŒrde fĂŒr den Aufwand gerne Bezahlen.
Senden sie eine Email Adresse und dann kann ich ihnen meine Tabelle zusenden.
Mit Freundlichen GrĂŒĂen,
Denis Kannengieser
besten Dank fĂŒr dieses Tutorial, hat alles super funktioniert.
Kann ich das auch so erstellen, dass der Zeitstempel in die aktive Zelle NUR DANN eingetragen wird, wenn die Zelle leer ist? Und falls in der Zelle bereits ein Wert eingetragen wird, nichts passiert?
Beste GrĂŒĂe
Demir
Hallo, tolle ErklÀrung. Ich hÀtte gerne, dass es einen automatische Eintragung gibt. Wir sind mehrere Leute die eine Google Tabelle benutzen und jedesmal, wenn wer was eingetragen hat, soll ein Zeitstempel kommen. Hast du da eine Idee?
GrĂŒĂe Kathrin
Moin Chris,
Klasse Tutorials die Du hier machst! Ich habe quasi genau so etwas gesucht und es hat auch (fast) geklappt. In meinem Script benötige ich das Datum in einer separaten Zelle sowie die Uhrzeit in einer separaten Zelle, in dem Eingabefeld, worin ich dann noch weitere manuelle Eintragungen machen muss.
Nachdem die Felder gefĂŒllt sind, fĂŒhre ich eine weitere Funktion aus, die auf ein anderes Tabellenblatt zugreift.
Mein Problem ist, dass wenn ich die Funktion des Zeitstempels ausfĂŒhre, mir in Zelle C4 und F4 zwar die Daten richtig wiedergegeben werden, aber oben in der Bearbeitungsliste der komplette Zeitstempel steht, der dann auch in eine Statistik ĂŒbernommen wird, in der ich nur mit Datum und Uhrzeit getrennt weiterarbeiten kann… Vielleicht hast du eine Idee wie ich trotz richtigem Format den Ăbertrag in das andere Tabellenblatt bekomme? Hier mal das Script^^
const ss = SpreadsheetApp.getActiveSpreadsheet()
const eingabeWorksheet = ss.getSheetByName("Eingabe")
const einstellungenWorksheet = ss.getSheetByName("Einstellungen")
const statistikWorksheet = ss.getSheetByName("Statistik")
const inputFelder = ["C4","F4","C6","F6","C8","F8"]
//Eingabebutton
function EingabeFormularAbschicken() {
const felderWerte = inputFelder.map(f =>eingabeWorksheet.getRange(f).getValue())
statistikWorksheet.appendRow(felderWerte)
}
//ClearButton
function neuerEintrag(){
const felderWerte = inputFelder.forEach(f =>eingabeWorksheet.getRange(f).clearContent())
}
function Datumsstempel(){
var Eingabe=SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
ss.getRange("C4").setValue (Datumsstempel);
var Datumsstempel= new Date();
var DatumsstempelFormat= "dd.MM.yyyy";
ss.getRange("F4").setValue (Uhrzeit);
var Uhrzeit= new Date();
var UhrzeitFormat= "hh:mm";
Eingabe.getRange("C4").setValue(Datumsstempel).setNumberFormat(DatumsstempelFormat);
Eingabe.getRange("F4").setValue(Uhrzeit).setNumberFormat(UhrzeitFormat)
}
Danke vorab fĂŒr deine MĂŒhe!