GASでGoogle Sheetsを自動化する方法

Google Apps Script(GAS)を利用することで、Google Sheetsの様々な作業を自動化し、業務効率を大幅に向上させることができます。この記事では、GASを使ったGoogle Sheetsの自動化方法について、具体的な例を交えて解説します。

 

moun45.hatenablog.com

 

Google Apps Scriptとは?

Google Apps Script(GAS)は、Googleが提供するJavaScriptベースのスクリプト言語で、Googleクラウドアプリケーション(Google Sheets、Google DocsGoogle Formsなど)を自動化するためのツールです。GASを使うことで、繰り返し行う作業や複雑な処理を簡単に自動化できます。

スクリプトエディタの起動方法

Google Sheetsでスクリプトエディタを起動するには、以下の手順を行います。

  1. Google Sheetsを開く:自動化したいシートを開きます。
  2. スクリプトエディタを起動:メニューから「拡張機能」→「スクリプトエディタ」を選択します。

基本的なスクリプトの作成と実行

スクリプトエディタが開いたら、まず簡単なスクリプトを作成し、実行してみましょう。例えば、特定のセルに日付を挿入するスクリプトです。

function insertDate() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
sheet.getRange('A1').setValue(new Date());
}
 

このスクリプトは、A1セルに現在の日付を挿入するものです。

  1. スクリプトの保存スクリプトエディタの名前を設定し、保存します。
  2. スクリプトの実行ツールバーの「実行」ボタンをクリックしてスクリプトを実行します。初回実行時には認証が必要です。

データの自動取得と更新

次に、外部のAPIからデータを取得し、Google Sheetsに定期的に反映させる方法を紹介します。

function fetchData() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var response = UrlFetchApp.fetch('https://api.example.com/data');
var data = JSON.parse(response.getContentText());
sheet.getRange('A1').setValue(data.value);
}

このスクリプトは、APIから取得したデータをA1セルに挿入します。

メール送信の自動化

Google Sheetsのデータに基づいて、メールを自動送信するスクリプトです。

function sendEmail() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var emailAddress = sheet.getRange('B1').getValue();
var message = sheet.getRange('C1').getValue();
MailApp.sendEmail(emailAddress, 'Subject', message);
}

このスクリプトは、B1セルのメールアドレスにC1セルのメッセージを送信します。

定期実行の設定

GASでは、トリガーを設定することでスクリプトを定期的に実行することができます。以下の手順で設定します。

  1. スクリプトエディタのトリガー設定:メニューから「時計」アイコン(「トリガー」)をクリックします。
  2. 新しいトリガーの追加:「トリガーを追加」ボタンをクリックし、実行したい関数、実行するタイミング(時間ベースのトリガーなど)を設定します。

スプレッドシートのフォーマット自動化

セルのフォーマットを自動化するスクリプトも便利です。例えば、特定の条件に基づいてセルの色を変更する場合です。

function formatCells() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getRange('A1:A10');
var values = range.getValues();
for (var i = 0; i < values.length; i++) {
if (values[i][0] > 100) {
range.getCell(i + 1, 1).setBackground('red');
}
}
}

このスクリプトは、A1からA10までのセルの値が100を超える場合、そのセルの背景色を赤にします。

まとめ

Google Apps Scriptを利用することで、Google Sheetsの様々な作業を自動化し、業務効率を大幅に向上させることができます。スクリプトエディタの使い方を覚え、基本的なスクリプトを作成・実行することで、繰り返し作業や複雑な処理を簡単に自動化できます。公式ドキュメントやサンプルコードを活用しながら、業務に適したスクリプトを作成して、効率的な業務運営を実現しましょう。

 

moun45.hatenablog.com

 

最後によろしければ下記ボタンをクリックお願いします!