Uso PSPad come editor di testo, che consente di premere Alt+ Dper inserire un timestamp, ad esempio:
2010-07-17 23:45:44
C'è un modo per farlo in un foglio di calcolo di Google?
Uso PSPad come editor di testo, che consente di premere Alt+ Dper inserire un timestamp, ad esempio:
2010-07-17 23:45:44
C'è un modo per farlo in un foglio di calcolo di Google?
Risposte:
Uso AutoHotKey per eseguire questa funzione.
AutoHotKey è un'applicazione e una lingua di scripting per Windows.
Il codice che uso è sotto, sarebbe facilmente modificabile inserire l'ora e cambiare le barre in trattini se è quello che preferisci.
+!d:: ;Shift-Alt-D: Insert current date
SendInput %A_DD%/%A_MM%/%A_YYYY%
return
Fogli Google supporta le seguenti scorciatoie da tastiera:
Ctrl+ Shift+ :è il tasto per inserire il tempo.
Ctrl+ ;è la sequenza di tasti per inserire la data.
Ctrl+ Alt+ Shift+ :è la sequenza di tasti per inserire data e ora.
Consulta Acceleratori, mnemonici e scorciatoie da tastiera per maggiori dettagli.
Ho creato un piccolo script che converte la stringa letterale "_now" nell'attuale datetime -
function onEdit(e) {
if (e.range.getValue() == "_now") {
e.range.setValue(new Date());
}
}
Trovo abbastanza utile digitare _now
e farlo convertire nel valore datetime corrente.
Vedi https://developers.google.com/apps-script/quickstart/macros e https://developers.google.com/apps-script/understanding_events per maggiori informazioni su come aggiungere questo al tuo foglio di calcolo di Google
Puoi inserire un bookmarklet con questa posizione:
javascript:var thetime=new Date();var txtNode=document.createTextNode((thetime.getMonth()+1)+'/'+thetime.getDate()+'/'+thetime.getFullYear()+' '+thetime.getHours()+':'+thetime.getMinutes()+':'+thetime.getSeconds()); var myInputNode=document.getElementsByClassName('cell-input')[1]; if (myInputNode.hasChildNodes()) { myInputNode.replaceChild(txtNode, myInputNode.childNodes[0]); } else { myInputNode.appendChild(txtNode); }; void(0);
quindi modifica la cella e fai clic sul bookmarklet.
=today()
in una cella per ottenere la data corrente.La formula per la data e l'ora correnti è =now()
. Questo può essere usato per creare un timestamp statico come segue:
=NOW()
in una cellaFogli Google non lo supporta, ma puoi provare un'altra soluzione alternativa senza app esterne:
(Se sei su un MacOS, usa Cmdinvece di Ctrlper Copy/Cut/Paste
, ma Ctrl+ Mper inserire il commento, perché Cmd+ Msta minimizzando la finestra.)
Ho anche creato uno script per questo e volevo un formato non disponibile nei timestamp predefiniti (come in =TODAY()
o =NOW()
).
Inoltre, acquisisce il fuso orario in base alla sessione corrente (impostata nelle preferenze del foglio).
function _NOW(input)
{
// for formatting, see:
// https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
var timestamp_format = "yyyy-MM-dd hh:MM a"; // Timestamp Format eg: 2019-04-11 12:04 PM
var timezone = Session.getScriptTimeZone();
var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
return date;
}
Usarlo è facile:
=_NOW()
Per chiarire: ho eseguito manualmente la formattazione della data perché la formattazione della data personalizzata in Fogli Google è un mucchio di cestino fiammeggiante (nessun modo per impostare un formato personalizzato come predefinito, nessun modo per modificare l'ordine degli elementi data / ora senza eliminare tutto prima e aggiungendo ciascuna parte alla volta).
Puoi fare riferimento a questo tutorial , contiene anche video. Nel codice dello script, modifica
var timestamp_format = "MM-dd-yyyy"; // Timestamp Format.
Di default ti dà solo la data, passa al codice sottostante per ottenere il tempo.
var timestamp_format = "MM-dd-yyyy hh:mm:ss"; // Timestamp Format.
E 'questo quello che stai cercando ? L'ho provato e funziona perfettamente.
oggi, ho appena provato questo =IF(A2<>"",NOW(),"")
. Se A2 ha un valore, allora inserisce il timestamp. Se A2 è vuoto, il timestamp non viene inserito nella colonna timestamp.
=if(len(A2)>0;if(B2<>"";B2;now());"")
In Impostazioni, modifica la soluzione del circuito su 1 e funzionerà senza JavaScript