Googleスプレッドシートで自動的に昨日の日付のセルに移動する方法

クラウドサービス

Googleスプレッドシートを使っている際、毎回最初に表示される行に戻るのが不便だと感じることはありませんか?特に、昨日の日付をすぐに表示させたい場合には、手動でスクロールする必要があり、時間がかかります。この問題を解決するために、Google Apps Scriptを使って、スプレッドシートを開くと自動的に昨日の日付が入力されているセルに移動する方法を解説します。

Google Apps Scriptとは?

Google Apps Scriptは、Googleのクラウドベースのツールを拡張するためのスクリプト言語で、Google スプレッドシートやGoogle ドキュメントなどに自動化の機能を追加できます。スプレッドシートに特定の動作をさせるためのコードを簡単に書くことができ、ビジネスや日常的な作業を効率化できます。

問題の背景と解決方法

Googleスプレッドシートを開く度に一番上の行に戻ってしまうのを解決するためには、スプレッドシートに入力されている「昨日の日付」のセルに自動的に移動するように設定します。これを実現するためには、Google Apps Scriptで特定のコードを記述する必要があります。

必要なコードの記述方法

以下は、Google Apps Scriptを使ってスプレッドシートを開いた際に自動的に昨日の日付が入力されたセルに移動するためのコードの一例です。

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var dateColumn = sheet.getRange('D10:D7000').getValues();
  var today = new Date();
  var yesterday = new Date(today.setDate(today.getDate() - 1));
  for (var i = 0; i < dateColumn.length; i++) {
    if (dateColumn[i][0].getDate() === yesterday.getDate() && dateColumn[i][0].getMonth() === yesterday.getMonth() && dateColumn[i][0].getFullYear() === yesterday.getFullYear()) {
      var row = i + 10; // D10から始まるので10を加える
      sheet.setActiveRange(sheet.getRange('D' + row));
      break;
    }
  }
}

このコードは、D列の10行目から7000行目までの日付を調べ、昨日の日付を検出してそのセルに移動します。スプレッドシートを開いた時に自動的に動作するように、onOpen関数を使用しています。

設定方法

Google スプレッドシートでこのスクリプトを設定するには、次の手順を実行します。

  1. スプレッドシートを開き、上部メニューから「拡張機能」>「Apps Script」を選択します。
  2. 新しいプロジェクトが開いたら、コードエディタに上記のコードを貼り付けます。
  3. 保存し、スプレッドシートに戻って設定を完了します。

これで、毎回スプレッドシートを開くと、スクリプトが自動的に動作し、昨日の日付のセルに移動します。

まとめ

Google Apps Scriptを活用することで、Google スプレッドシートを開くたびに自動で昨日の日付が入力されたセルに移動する機能を実現できます。この自動化により、作業が効率化され、時間を節約できます。もし他のカスタマイズを加えたい場合にも、Apps Scriptを活用することでより便利な機能を追加できます。

コメント

タイトルとURLをコピーしました