このアンケートにはスマホからは回答できません。
パソコンから回答していただきますようお願いいたします。
大学祭実行委員会 生協レンタル品注文内容調査フォーム
団体名と商品をご選択ください
フォームの締め切り目安は10月10日(金) 23:59です。
⚙️
設定が必要です
管理者の方へ:コード内の「YOUR_SCRIPT_URL_HERE」を実際のGoogle Apps Script Web AppのURLに置き換えてください。
設定完了後、この表示は自動的に消えます。
設定手順を表示
1. スプレッドシートを作成
Google Driveで新しいスプレッドシートを作成します
2. Apps Scriptエディタを開く
スプレッドシートで「拡張機能」→「Apps Script」をクリック
3. 提供されたGASコードを貼り付け
デフォルトのコードを削除し、下記のGASコードを貼り付け
4. Webアプリとして公開
「デプロイ」→「新しいデプロイ」→種類「ウェブアプリ」
「アクセスできるユーザー」を「全員」に設定
5. URLを設定
生成されたWebアプリURLをフォームコードに設定
📋 Apps Scriptに貼り付けるコード:
function doPost(e) {
return processRequest(e);
}
function doGet(e) {
return processRequest(e);
}
function processRequest(e) {
try {
const sheet = SpreadsheetApp.getActiveSheet();
// 複数の方法でデータを取得
let data;
if (e.parameter && e.parameter.data) {
// URLパラメータまたはFormDataから
data = JSON.parse(e.parameter.data);
} else if (e.postData && e.postData.contents) {
// POSTボディから
data = JSON.parse(e.postData.contents);
} else {
throw new Error('データが見つかりません');
}
// ヘッダーが存在しない場合は作成
if (sheet.getLastRow() === 0) {
sheet.getRange(1, 1, 1, 6).setValues([
['送信日時', '団体名', '商品名', '数量', '単価', '小計']
]);
sheet.getRange(1, 1, 1, 6).setFontWeight('bold');
}
const timestamp = new Date(data.timestamp);
// 各商品を行として追加
data.items.forEach(item => {
sheet.appendRow([
timestamp,
data.groupName,
item.name,
item.quantity,
item.price,
item.subtotal
]);
});
return ContentService.createTextOutput('SUCCESS');
} catch (error) {
return ContentService.createTextOutput('ERROR: ' + error.toString());
}
}