top of page

Google Apps Script(GAS)を使ってスプレッドシートの作業を自動化しよう


フリーランスとして活動していると、日常業務の効率化は非常に重要ですよね。定期的な作業やデータの更新など、手動で行うと時間がかかることがあります。そこで今回は、Google Apps Script(GAS)を使ってGoogleスプレッドシートの操作を自動化する方法をご紹介します。具体的な作業の自動化例も交えながら解説しますので、ぜひ参考にしてください。





Google Apps Script(GAS)とは?

Google Apps Script(GAS)は、Googleが提供するJavaScriptベースのスクリプト言語です。GoogleスプレッドシートやGoogleドライブ、GmailなどのGoogleサービスを操作するために使用できます。これにより、ルーティン作業を自動化し、業務効率を大幅に向上させることができます。



基本的な設定

まずは、Google Apps Scriptを使うための基本的な設定を行いましょう。


手順

  1. Googleスプレッドシートを開く:

  • 既存のスプレッドシートを開くか、新規に作成します。

  1. スクリプトエディタを開く:

  • 上部メニューから「拡張機能」→「Apps Script」を選択します。

  • スクリプトエディタが新しいタブで開きます。

  1. スクリプトを書く:

  • デフォルトで用意されているmyFunction関数を削除して、自分のスクリプトを記述します。



自動化の具体例

ここでは、フリーランスに役立つ具体的な自動化の例をいくつか紹介します。


例1: 毎日のタスク管理表を更新するスクリプト

毎日のタスク管理は重要です。以下のスクリプトは、毎日タスク管理表を更新し、今日の日付を設定します。

function updateDailyTasks() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("タスク管理");
  var today = new Date();
  
  // 今日の日付をA1セルに設定
  sheet.getRange("A1").setValue(today);
  
  // 毎日のタスクをリセット(例: B2:B10セルを空にする)
  sheet.getRange("B2:B10").clearContent();
}

// トリガーを設定して毎日実行
function createTimeDrivenTriggers() {
  ScriptApp.newTrigger('updateDailyTasks')
           .timeBased()
           .everyDays(1)
           .atHour(8)  // 例えば毎朝8時に実行
           .create();
}

例2: クライアントの請求書データを自動で集計するスクリプト

クライアントごとの請求書データを自動で集計するスクリプトです。月初に実行して、前月の総請求金額を集計します。

function aggregateInvoices() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("請求書");
  var dataRange = sheet.getRange("A2:B100"); // 請求書データがある範囲
  var data = dataRange.getValues();
  
  var total = 0;
  for (var i = 0; i < data.length; i++) {
    if (data[i][1]) { // 金額がある場合に集計
      total += data[i][1];
    }
  }
  
  // 合計金額を特定のセルに設定(例: C1セル)
  sheet.getRange("C1").setValue(total);
}

// トリガーを設定して毎月1日に実行
function createMonthlyTrigger() {
  ScriptApp.newTrigger('aggregateInvoices')
           .timeBased()
           .onMonthDay(1) // 毎月1日に実行
           .atHour(9)  // 例えば午前9時に実行
           .create();
}


トリガーの設定

スクリプトを定期的に実行するには、トリガーを設定します。上記のスクリプト例には、トリガーを設定する関数が含まれています。これを実行することで、指定した時間に自動でスクリプトが実行されます。


トリガーの設定手順

  1. スクリプトエディタで「トリガー」メニューを開く:

  • 右上の時計アイコン(トリガー)をクリックします。

  1. トリガーを追加:

  • 「トリガーを追加」ボタンをクリックして、実行する関数(例: createTimeDrivenTriggers)と実行タイミング(例: 毎日または毎月)を設定します。



デバッグとテスト

スクリプトエディタには、デバッグ機能が備わっています。エディタ内でスクリプトを実行して、結果を確認し、エラーがあれば修正します。



まとめ

Google Apps Scriptを使うことで、Googleスプレッドシートの操作を大幅に自動化できます。特にフリーランスとして活動する際には、定型業務を自動化することで時間を節約し、より重要な業務に集中できます。初めての方でも簡単に取り組めるので、ぜひ試してみてくださいね。

何か他に質問があれば、気軽にどうぞ!皆さんのフリーランス活動がより効率的で充実したものになることを願っています。

bottom of page