web-dev-qa-db-ja.com

Googleシートは最近アメリカの日時形式を変更しましたが、元に戻すにはどうすればよいですか?

Googleシートは最近アメリカの日時形式を変更しましたが、元に戻すにはどうすればよいですか?

以前はデフォルトで「MM/dd/yyyy」を使用していましたが、数週間前に日付を入力すると「MM/dd」にデフォルト設定され、手動で再フォーマットする必要があります。

そして最悪の部分は、列がフォーマットされていることを「覚えていない」ことです。シートを開いて日付/時刻列の編集を開始するたびに、戻ってその列を「MM/dd/yyyy」の形式の日付/時刻列にすることをGoogleスプレッドシートに通知する必要があります。

とにかく自分の日付/時刻のデフォルトを「MM/dd/yyyy」に戻す方法はありますか? (はい、私のシートはすべて米国の国に設定されています。)

とにかく、列が閉じられて再び開かれるたびに、Googleスプレッドシートに列の書式設定を記憶させる方法はありますか?

2
Lup

私の経験では、セルは与えられたフォーマットを記憶しています。列がM/d/yyyyにフォーマットされると、そのままになります。

デフォルトの日付形式を制御する設定(国の設定以外)はありません。ただし、スクリプトエディタ([ツール]の下)で次のスクリプトを入力すると、入力または編集する日付はすべてM/d/yyyyとして自動的にフォーマットされます。

function onEdit(e) {
  if (e.range.getNumberFormat() == 'm/d') {
    e.range.setNumberFormat('M/d/yyyy');
  }
}

テクニカルノート:M/d/yyyyは2016年6月27日を意味し、MM/dd/yyyyは2016年6月27日を意味します。先行ゼロを好む場合は、それに応じてsetNumberFormatを変更します。


別のテクニカルノート:M/dの代わりにm/dを使用するGoogleは、 SimpleDateFormat仕様 と矛盾します。これは、日付形式でMの代わりにmを許可するために、しばらく前に決定したものです。

1
user79865