Googleスプレッドシートにタイムスタンプを作成する方法はありますか?


31

PSPadをテキストエディターとして使用します。これにより、Alt+ Dを押してタイムスタンプを挿入できます。例:

2010-07-17 23:45:44

Googleスプレッドシートでこれを行う方法はありますか?


4
これは、Googleログをエンジニアリングログのようなものとして使用する際に役立ちます。+1。
トーマスオーエンズ

1
はい、私はグーグルドキュメントをウェブサイトの外部データソースとして使用しており、この理由のためにタイムスタンプを付けたいと考えています
エドワード・タンガイ

1
@EdwardTanguayもしあなたがたまたま通り過ぎてしまったら..最も投票されたものに正しい答えを変更する必要があります:)
リピス

1
読者は、現時点ではトップではありませんが、ベストアンサーを使用することをお勧めします。

回答:


8

AutoHotKeyを使用してこの機能を実行します。

AutoHotKeyは、Windowsスクリプトアプリケーションおよび言語です。

私が使用するコードは以下のとおりです。時間を挿入し、それがお好みであれば、スラッシュをハイフンに変更するのは簡単に変更できます。

+!d:: ;Shift-Alt-D: Insert current date
SendInput %A_DD%/%A_MM%/%A_YYYY%
return

はい、autohotkeyは私の友人です。奇妙なことにこれを忘れてしまいました。%A_YYYY%-%A_MM%-%A_DD%%A_Hour%:%A_Min%:%A_Sec%を使用しました。
エドワードタンガイ

心配ありません、私はあなたに思い出させてくれてうれしいです:)
tobeannounced

39

Googleスプレッドシートでは、次のキーボードショートカットがサポートされています。

  • Ctrl+ Shift+ :は、時間を挿入するためのキーストロークです。

  • Ctrl+ ;は、日付を挿入するためのキーストロークです。

  • Ctrl+ Alt+ Shift+ :は、日付と時刻を挿入するためのキーストロークです。

詳細については、キーボードアクセラレータ、ニーモニック、およびショートカットを参照してください。


4
これはMicrosoft Excelに似ていますが、Excelとは異なり、完全なタイムスタンプを生成するためにショートカット間を移動することはできません。Google Docsのショートカットは、セル全体が選択されている場合にのみ機能し、編集中の場合には機能しないようです。そのため、両方ではなく、このメソッドで日付または時刻のみを取得できます。
MrWhite

3
いいね!これはスプレッドシートでのみ機能し、ドキュメントでは機能しないことに注意してください。
ジンミョル

1
@Rubénこれで両方に対応しました!(h / t コーレンキャメロンクレスト

firefox linuxで動作していません:-(メニューからこの機能を取得する方法はありますか?? !!
フィリップガショー

13

文字列リテラル「_now」を現在の日時に変換する小さなスクリプトを作成しました-


function onEdit(e) {
  if (e.range.getValue() == "_now") {
    e.range.setValue(new Date());
  }
}

入力_nowして、現在の日時値に変換するのは非常に便利です。

これをGoogleスプレッドシートに追加する方法の詳細については、https://developers.google.com/apps-script/quickstart/macrosおよびhttps://developers.google.com/apps-script/understanding_eventsご覧ください


1
Google Appsスクリプトのパワー
ジェイコブヤントゥインストラ

4
これは、Windowsだけでなくすべてのプラットフォームで検討する場合の答えです。
ロバート14

@ロバート、webapps.stackexchange.com / a / 24692/10579はより良い答えではありませんか?
Pacerier

@Pacerierこれらのショートカットは日付または時刻を追加するだけなので、そうは思いません。OPが要求した日時ではありません。指定したリンクで行われたコメントを読んでください。
ジェイコブヤントゥインストラ

このスクリプトで作成されたタイムスタンプのフォーマットは、ここで説明されています

7

次の場所でブックマークレットを配置できます。

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

次に、セルを編集してブックマークレットをクリックします。


ブックマークレットはどのように配置しますか?
ルビー

Ruby- ここで作成したボタンをブックマークバーにドラッグできます。
SelfPublish.org

2
  1. 近くのセル、または固定ペイン内で=today()、セルに入力して現在の日付を取得します。
  2. セルをコピーし、編集メニューの(特殊貼り付け→値のみ貼り付け)を使用して、日付スタンプが必要なセルに値を貼り付けたときに静的な日付と時刻を取得します。

同様に、Ctrl-Cに続いてCtrl-Shift-Vを使用します(メニューに到達しません)。同じアプローチを使用し=now()て、同じセル内で日付時刻の両方を取得できます。これは、おそらくスクリプトなしでこれを行う最も簡単な方法です。

2

現在の日時の式は=now()です。これを使用して、次のように静的タイムスタンプを作成できます。

  1. =NOW()セルに入る
  2. この値をコピーします CtrlC
  3. と同じセルにCtrlShiftV 貼り付けます(または、他のプラットフォームの「テキストのみを貼り付ける」と同等)

2
しかし、それはタイムスタンプではありませんか?スプレッドシートが開かれた現在の日付/時刻を表示しているだけです。
エール

1

Googleスプレッドシートではサポートされていませんが、外部アプリなしで別の回避策を試すことができます。

  1. コメントを挿入(Ctrl+ M
  2. そこからタイムスタンプをコピーします(Ctrl+ CまたはCtrl+ X
  3. コメントを削除します(右クリック> [削除])
  4. タイムスタンプを貼り付けます(Ctrl+ V

(あなたがMacOSの上にある場合は、使用Cmdの代わりにCtrlのためにCopy/Cut/Paste、しかしCtrl+ Mので、コメントを挿入するためのCmd+は、Mウィンドウを最小化しています。)


1

このためのスクリプトも作成しましたが、デフォルトのタイムスタンプ(in =TODAY()やなど=NOW())で使用できない形式が必要でした。

また、現在のセッション(シートの設定で設定)に基づいてタイムゾーンを取得します。

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;
}

使い方は簡単です。

=_NOW()

明確にするために、Googleスプレッドシートのカスタム日付フォーマットは燃えるごみの山であるため、手動で日付フォーマットを行いました(デフォルトとしてカスタムフォーマットを設定する方法、すべてを削除せずに日付/時刻要素の順序を変更する方法はありません)最初に、1つずつ追加します)。


これは、すべての呼び出しのために同じ時間になってしまった
nhed

@nhedは、このスクリプトが呼び出されるたびに(スプレッドシートを開くときなど)、その形式で現在の日付を文字列として返します。永久的なタイムスタンプが必要で、更新しない場合は、これをセルに入れてそのセルから値をコピーし、必要な場所に貼り付けます。
カイルファルコナー

デスクトップブラウザーにスクリプトを追加し、スプレッドシートは既に携帯電話で開いていました...デスクトップ上と同じタイムスタンプを携帯電話で作成していました...データポイントを追加するために閉じて再度開く必要があります「Tは、実用的なようだ...私はあなたが私のために働いていた何かを得るために、上記の異なる機能でフォーマット組み合わせ
nhed

0

このチュートリアルを参照してください。ビデオも含まれています。スクリプトコードで、変更

var timestamp_format = "MM-dd-yyyy"; // Timestamp Format.

デフォルトでは日付のみを提供します。時間を取得するには、以下のコードに変更します。

var timestamp_format = "MM-dd-yyyy hh:mm:ss"; // Timestamp Format.

これはあなたが探しているものですか?私はそれを試してみましたが、完全に機能します。


0

タングアイ、私はこれをテストしました=IF(A2<>"",NOW(),"")。A2に値がある場合、タイムスタンプが入力されます。A2が空の場合、タイムスタンプはタイムスタンプ列に入力されません。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.