コーディング レベル: 初級
所要時間: 10 分
プロジェクト タイプ: イベントドリブン トリガーによる自動化
目標
- ソリューションの機能について理解する。
- ソリューション内での Apps Script サービスの役割を理解する。
- スクリプトを設定します。
- スクリプトを実行します。
このソリューションについて
Google フォームを使用して、Google ドライブにファイルを同時にアップロードして整理します。このフォームには、アップロードするファイルとファイルの整理方法に関する入力項目が含まれています。
仕組み
設定関数は、アップロードされたすべてのファイルを保存するフォルダと、ユーザーがフォームを送信するたびにトリガーされるトリガーを作成します。ユーザーがフォームに入力するときに、アップロードするファイルと、ファイルを保存するサブフォルダを選択します。ユーザーがフォームを送信すると、スクリプトはファイルを対応するサブフォルダに転送します。フォルダがまだ存在しない場合は、スクリプトによって作成されます。
Apps Script サービス
このソリューションでは、次のサービスを使用します。
- スクリプト サービス - ユーザーがフォームを送信するたびにトリガーを実行します。
- プロパティ サービス - スクリプトがセットアップ中に作成するトリガーの ID を保存し、トリガーの重複を防ぎます。
- ドライブ サービス - セットアップ時に、ドライブ内のフォームの場所を取得し、同じ場所にフォルダを作成します。ユーザーがフォームを送信すると、ドライブ サービスはファイルをそのフォルダに転送します。また、指定されている場合は、指定されたサブフォルダに転送します。サブフォルダがまだ存在しない場合は、スクリプトによって作成されます。
- フォーム サービス - ユーザーがフォームを送信した後に選択したファイルとフォルダ名を取得し、ドライブ サービスに送信します。
前提条件
このサンプルを使用するには、次の前提条件を満たしている必要があります。
- Google アカウント(Google Workspace アカウントの場合、管理者の承認が必要となる可能性があります)。
- インターネットに接続できるウェブブラウザ。
スクリプトを設定する
フォームを作成する
- forms.google.com にアクセスし、空白アイコン をクリックします。
- [無題のフォーム] をクリックし、フォームの名前を [ドライブにファイルをアップロード] に変更します。
- [無題の質問] をクリックし、質問の名前を [サブフォルダ] に変更します。
- [サブフォルダ] の質問で、その他アイコン > [説明] をクリックします。
- [説明] に「ファイルを保存するサブフォルダを選択してください。[なし] を選択すると、ファイルは [アップロードされたファイル] フォルダに保存されます。
- [サブフォルダ] の質問に次のオプションを追加します。
- <なし>
- プロジェクト A
- プロジェクト B
- プロジェクト C
- 質問を必須にするには、[必須] をクリックします。
- 質問を追加アイコン をクリックします。
- [複数選択] をクリックし、[ファイルのアップロード] を選択します。
- [続行] をクリックします。
- [質問] に「アップロードするファイル」と入力します。ユーザーがアップロードできるファイルの種類と最大数を選択できます。
- 質問を必須にするには、[必須] をクリックします。
Apps Script プロジェクトを作成する
- フォームで、その他アイコン > [スクリプト エディタ] をクリックします。
- [無題のプロジェクト] をクリックし、プロジェクトの名前を [ドライブにファイルをアップロード] に変更します。
- 別のスクリプト ファイルを作成するには、[ファイルを追加] > [スクリプト] をクリックします。ファイル名を
Setup
とします。 両方のスクリプト ファイルの内容を次のように置き換えます。
コード.gs
Setup.gs
スクリプトを実行する
- Apps Script エディタで、
Setup.gs
ファイルに切り替えます。 - 関数のプルダウンで
setUp
を選択します。 - [実行] をクリックします。
プロンプトが表示されたら、スクリプトを承認します。OAuth 同意画面に [このアプリは確認されていません] という警告が表示された場合は、[詳細] > [{プロジェクト名} に移動(安全でない)] を選択して続行します。
フォームに戻り、プレビュー アイコン をクリックします。
フォームでサブフォルダを選択し、ファイルをアップロードします。
[送信] をクリックします。
ドライブに移動し、[ドライブにファイルをアップロードする(ファイルの回答)] フォルダを開きます。アップロードしたファイルは、フォームで選択したサブフォルダに保存されます。
寄稿者
このサンプルは、Google デベロッパー エキスパートの協力を得て Google によって管理されています。