
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Create a new Google Sheet and enter a street address
/ 50
Run the Google Sheets, Maps, and Gmail app
/ 50
このラボでは、ウェブ開発言語の中でも主流の JavaScript でコードを記述して、Google のデベロッパー テクノロジーを簡単に利用する方法について説明します。まず Google Apps Script でコードを記述して、Google スプレッドシート内のセルに保存された住所を抽出し、その住所をもとに Google マップを生成して、その地図へのリンクを Gmail を使って自分や友人宛てに送信します。このスクリプト言語のすばらしい点は、わずか 4 行のコードでこの一連の処理を実行できるところです。
次の知識があると効率的に学習できます。
こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。
このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
準備ができたら、[ラボを開始] をクリックします。
[ラボの詳細] ペインに、このラボで Gmail にログインするために必要な一時的な認証情報が表示されます。
ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。
[Google スプレッドシートを開く] をクリックします。
ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
[次へ] をクリックします。
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
[次へ] をクリックします。
指示に従ってすべての利用規約に同意します。
Google スプレッドシートが開き、受講者用 Google アカウントにログインできました。
Google Apps Script が提供する開発環境は、これまでに使い慣れたものではないかもしれませんが、次のことが可能になります。
Apps Script アプリケーションには、次の 2 つがあります。
コンテナ バインドのアプリもスタンドアロンのアプリも、公開することで幅広く利用できるようになります。
ここでは、Google スプレッドシートのコンテナ バインド型 Apps Script アプリを作成していきます。まずは新しいスプレッドシートを作成しましょう。
次の手順を実行して、新しい Google スプレッドシートに住所を入力します。
このシートで必要な作業はこれだけです。それでは、エディタを開いてコードを記述していきます。
[進行状況を確認] をクリックして、上記のタスクを実行したことを確認します。
Apps Script は、スプレッドシートにバインドされたスクリプトの作成に使用するコードエディタを提供します。
Apps Script が開きます。右側のコードエディタ ウィンドウに注目してください。
myFunction()
というデフォルトの関数が自動的に作成されて、エディタに表示されます。これで、アプリケーションのコードを記述する準備ができました。
コード.gs
ファイルはテンプレートのコードを提供するもので、何かを実行することはありません。以下のコードをコピーしてエディタ ウィンドウに貼り付け、テンプレート コードと置き換えます。<YOUR_EMAIL>
はラボのユーザー メールアドレスに変更してください。これで完了です。オプションのアノテーションを除いて 4 行で sendMap()
アプリを作成しました。
<YOUR_EMAIL>
をこのラボで用意されているユーザー メールアドレスに必ず置き換えて、ラボ中にメールを確認できるようにしてください。
エディタのコードを置き換えると、ファイル名の左に赤い丸が表示されます。
これは、ファイルに編集が加えられたため、保存が必要であることを示しています。編集して保存されていない内容があると必ず表示されます。
Ctrl+S(Windows や Linux など)または command+S(Mac)を押して保存することもできます。次に進む前に、プロジェクトに名前を付ける必要があります。
作成したアプリを実行する方法は次のとおりです。
sendMap()
に変更したので、関数の実行には sendMap を選択します。sendMap()
関数を実行します。認証コードは Apps Script で管理されるため、記述する必要はありません。ただし、スクリプトが(ユーザーに代わって)スプレッドシートにアクセスし、Gmail でメールを送信できるよう、アプリユーザー自身がアクセスを許可する必要があります。最初の認証ダイアログは、次のようになります。
アクセスを許可すると、スクリプトが最後まで実行されます。
sendMap
を確認します。メッセージが表示されたら、[ダッシュボードを表示] をクリックします。左側のラボパネルに表示されている [Gmail を開く] ボタンをクリックします。
[アカウントを選択] ダイアログで、受講生のユーザー名を入力して [次へ] をクリックします。
ラボから提供されたパスワードを入力して [次へ] をクリックします。
[同意] をクリックして利用規約に同意します。
これで、Gmail の受信トレイが表示されます。件名が「Map」で本文が次のようなメッセージが届きます。
[進行状況を確認] をクリックして、上記のタスクを実行したことを確認します。
たった 4 行のコードで、Google の 3 つのサービスにアクセスして意味のある処理を実行できました。これだけではアプリケーションとして完成されていませんが、すばらしい結果です。JavaScript や Apps Script に慣れていなくても、コードの意味や大まかな仕組み、Apps Script で何ができるかを理解していただけたら幸いです。
ここでは、コードを詳しく確認していきます。
このアプリケーションのコードは短いため、全体的な構造について特に説明することはありません。特に Google の 3 種類のサービスを利用する箇所を、1 行ずつ詳しく確認していきます。
次の行は、通常の JavaScript の関数宣言で、sendMap()
という関数を定義しています。
コードの 1 行目では、スプレッドシート サービスを呼び出しています。SpreadsheetApp オブジェクトを使用することにより、Apps Script からサービスにアクセスできます。返されたシートを、sheet という名前の変数に代入しています。
getActiveSheet() メソッドでは名前のとおりの処理が実行されます。ユーザー インターフェース(UI)で現在アクティブなシートへの「ハンドル」が返されます。
取得した sheet
オブジェクトを使用して、getRange() で A1 表記のセル範囲(ここでは 1 つのセル)を参照しています。「セル範囲」とはセルのグループを指しますが、今回のように 1 つのセルの場合もあります。セル A1
は、住所を入力したセルです。
getValue() でセル範囲の内容を取得し、戻り値を address 変数に代入しています。その他の住所を追加して、他のセルからも読み出してみましょう。
3 行目では、Maps オブジェクトを使って Google マップサービスにアクセスしています。マップサービスへのアクセスが成功したら、newStaticMap() で新しい静的マップの作成がリクエストされます。
また addMarker() メソッドで、シートから取得した住所に「ピン」がドロップされます。
最後の行では、メールサービスを使用しています。GmailApp オブジェクトの sendEmail() メソッドを呼び出してメールを送信しています。メールには「See below.」というテキストと地図画像の添付ファイルが含まれます。
ここでは、Google Apps Script を使用してコードを記述しました。Google のデベロッパー テクノロジーを利用して Google スプレッドシート内の住所を抽出し、その住所をもとに Google マップを生成し、その地図をメールで送信するコードです。
このセルフペース ラボは、「Workspace Integrations」クエストの一部です。クエストとは学習プログラムを構成する一連のラボのことで、完了すると成果が認められて上のようなバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。このラボの修了後、こちらのクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能な全クエストについては、カタログをご覧ください。
クエストを続けるか、以下のおすすめのラボをご確認ください。
このラボで紹介しているコードは、GitHub リポジトリ(GitHub.com/googlecodelabs/apps-script-intro)でも入手できます(このラボの内容は、リポジトリのコードと同じ内容になるようにしています)。以下に、このラボの内容をさらに掘り下げたり、Google デベロッパー ツールにプログラムでアクセスしたりするために役立つ資料を示します。
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2023 年 6 月 5 日
ラボの最終テスト日: 2023 年 6 月 5 日
Copyright 2025 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
One lab at a time
Confirm to end all existing labs and start this one