備品貸出のgoogleフォーム スプレットシートとの連携

実現したいこと

1.googleフォームから入力された日付、借りる備品、借りる人の名前が入力される
2.スプレットシートの1行目の備品名とA列目の日付で一致する位置に借りる人の名前を入力する。

前提

GASで備品貸出フォームを作成しています。
作成中にエラーを吐いていないのに実行されなく何をしていいのか困っています。

発生している問題・エラーメッセージ

2023/09/16 15:41:15 情報 備品名 = デジタルカメラ① string 日にち = 2023/09/04 string 名前 = ささかま string

該当のソースコード

使用言語はGASでスプレットシートからのコンテナバインドスクリプトです。

function googleForms(e) { const [timeStamp, dating, equimentName, name] = e.values; Logger.log("備品名 = " + equimentName + " " + typeof(equimentName) + " 日にち = " + dating + " " + typeof(dating) + " 名前 = " + name + " " + typeof(name)); } function insertDataInCell(equimentName, name, dating) { const spreadsheetId = '1lNApnZyMDe0zW87CwS59vahjYnl62LFj65nop7rf5D0'; // スプレッドシートのIDを指定 const sheetName = '令和5年'; // シート名を指定 const spreadsheet = SpreadsheetApp.openById(spreadsheetId); const sheet = spreadsheet.getSheetByName(sheetName); // 1行目とA列目のデータを取得 const headerRow = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; const headerCol = sheet.getRange(1, 1, sheet.getLastRow(), 1).getValues(); // 列番号 (i) の取得 const colIndex = headerRow.indexOf(equimentName); if (colIndex === -1) { console.log(`${equimentName} 行が見つかりません。`); return; } // 行番号 (j) の取得 const rowIndex = headerCol.findIndex(row => row[0] == dating); if (rowIndex === -1) { console.log(`${dating} 行が見つかりません。`); return; } // セルにデータ (name) を挿入 sheet. getRange(rowIndex + 1, colIndex + 1).setValue(name); console.log(`セル (${dating}, ${equimentName}) にデータを挿入しました: ${name}`); }

色々調べながら、やっていたのですが行き詰まってしまいました。
大学でプログラムはやっていたのですが、基礎も理解できていない状態です。申し訳ありませんがご教授お願いいたします。

コメントを投稿

0 コメント