Esiste un modo per creare un timestamp in un foglio di calcolo di Google?


31

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?


4
Ciò sarebbe utile nell'uso di un documento Google come qualcosa di simile a un registro tecnico. +1.
Thomas Owens,

1
sì, utilizzo Google Documenti come fonti di dati esterne per i siti Web e vorrei essere in grado di timestamp per questo motivo
Edward Tanguay,

1
@EdwardTanguay se per caso ti passa .. dovresti cambiare la risposta corretta a quella più votata :)
Lipis,

1
Si consiglia ai lettori di utilizzare la risposta migliore , anche se al momento non è in cima.

Risposte:


8

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

sì, autohotkey è mio amico, strano per questo me ne sono dimenticato, ho usato% A_YYYY% -% A_MM% -% A_DD%% A_Hour%:% A_Min%:% A_Sec% e funziona perfettamente, grazie!
Edward Tanguay,

Non preoccuparti, felice di averti ricordato :)
annunciato il

39

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.


4
Questo è simile a Microsoft Excel, tuttavia, a differenza di Excel, non riesci a seguire un collegamento con un altro per produrre un timestamp completo. Il collegamento in Google Documenti sembra funzionare solo quando viene selezionata l'intera cella, non quando viene modificata, quindi puoi ottenere solo la data O l'ora con questo metodo, non entrambi.
MrWhite,

3
Bello! Nota, questo funziona solo per i fogli di calcolo, non per i documenti.
Jimmyorr,

1
@ Rubén Ora ce n'è uno per entrambi! (h / t kolen e Cameron Crest )

Non funziona su Firefox Firefox :-( c'è un modo per ottenere questa funzione attraverso i menu ?? !!
Philippe Gachoud,

13

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 _nowe 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


1
Potere allo script di Google Apps
Jacob Jan Tuinstra,

4
Questa dovrebbe essere la risposta se si considera su tutte le piattaforme non solo per Windows.
Robert,


@Pacerier Non credo, dato che queste scorciatoie aggiungono solo la data o l'ora. Non la data / ora richiesta dall'OP. Leggi i commenti fatti al link che hai fornito.
Jacob Jan Tuinstra,

La formattazione dei timestamp creati con questo script è indirizzata qui .

7

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.


Come si inserisce un bookmarklet?
Ruby,

Ruby: puoi trascinare il pulsante che ho creato qui nella barra dei segnalibri.
SelfPublish.org il

2
  1. In una cella vicina o all'interno di un riquadro bloccato, immetti =today()in una cella per ottenere la data corrente.
  2. Copia la cella, quindi utilizza (Incolla speciale → Incolla solo valori) dal menu Modifica, per ottenere una data e un'ora statiche, nel momento in cui hai incollato il valore nella cella in cui desideri il timbro della data.

Equivalentemente, usa Ctrl-C seguito da Ctrl-Maiusc-V (senza raggiungere il menu). Lo stesso approccio può essere utilizzato =now()per ottenere sia la data che l' ora all'interno della stessa cella: questo è probabilmente il modo più semplice per farlo senza uno script.

2

La formula per la data e l'ora correnti è =now(). Questo può essere usato per creare un timestamp statico come segue:

  1. Entra =NOW()in una cella
  2. Copia questo valore con CtrlC
  3. Incolla nella stessa cella con CtrlShiftV (o equivalenti per "incolla solo testo" su altre piattaforme)

2
Non è un timestamp, vero? Mostra solo la data / ora corrente quando è stato aperto il foglio di calcolo, no?
Ale

1

Fogli Google non lo supporta, ma puoi provare un'altra soluzione alternativa senza app esterne:

  1. Inserisci un commento ( Ctrl+ M)
  2. Copia il TimeStamp da lì ( Ctrl+ Co Ctrl+ X)
  3. Elimina il commento (clic destro> Elimina)
  4. Incolla il TimeStamp ( Ctrl+ V)

(Se sei su un MacOS, usa Cmdinvece di Ctrlper Copy/Cut/Paste, ma Ctrl+ Mper inserire il commento, perché Cmd+ Msta minimizzando la finestra.)


1

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).


Questo finì per essere la stessa ora per ogni invocazione
nhed

@nhed ogni volta che viene chiamato questo script (come quando apri il foglio di calcolo) restituirà la data corrente in quel formato come stringa. Se si desidera un timestamp permanente, che non si aggiorna mai, è possibile inserirlo in una cella e copiare il valore da quella cella, quindi incollarlo nel punto desiderato.
Kyle Falconer

Ho aggiunto lo script sul mio browser desktop e il foglio di calcolo era già aperto sul mio telefono ... stava ancora producendo sul mio telefono lo stesso timestamp che era sul mio desktop ... richiedendo che chiudessi e riaprissi per aggiungere un punto dati non sembra pratico ... ho combinato la tua formattazione con una funzione diversa sopra per ottenere qualcosa che ha funzionato per me
nhed

0

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.


0

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.


-1

=if(len(A2)>0;if(B2<>"";B2;now());"")

In Impostazioni, modifica la soluzione del circuito su 1 e funzionerà senza JavaScript

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.