Googleサイトを編集中。フォームに入力された内容を自動更新される表にして表示したい。
Googleフォームを作成、回答を表示するスプレッドシートを開いて
ツール>スクリプトエディタ
からソースコードを入力していった。
本業ではないため、以下のサイトを参考にして見様見真似で入力していった。
https://www.acrovision.jp/service/gas/?p=472
発生している問題・エラーメッセージ
Exception: Unexpected error while getting the method or property openById on object SpreadsheetApp. getData @ コード.gs:6 eval eval doGet @ コード.gs:2
該当のソースコード
gsとHTML
1◎gs 2 3function doGet() { 4 return HtmlService.createTemplateFromFile("更新履歴").evaluate(); 5} 6 7function getData() { 8 var ss = SpreadsheetApp.openById("HP更新履歴"); 9 var values = ss.getSheetByName("HP更新履歴").getDataRange().getValues(); 10 11 return values; 12} 13 14 15◎HTML 16<!DOCTYPE html> 17<html> 18 <head> 19 <base target="_top"> 20 <style> 21 table,td,th{border:1px solid black;} 22 td{padding: 10px;} 23 </style> 24 </head> 25 <body> 26 <? 27 var data = getData(); 28 ?> 29 <table> 30 <tr> 31 <th><?=data[0][0]?></th> 32 <th><?=data[0][1]?></th> 33 <th><?=data[0][2]?></th> 34 </tr> 35 <? 36 for(var i= 1,j=data.length;i<j;i++){ 37 output._=('<tr>') 38 output._=('<td>'+Utilities.formatDate(new Date(data[i][0]),'Asia/Tokyo','yyyy/MM/dd HH:mm:ss')+'</td>'); 39 output._=('<td>'+data[i][1]+'</td>'); 40 output._=('<td>'+data[i][2]+'</td>'); 41 output._=('</tr>') 42 } 43 ?> 44 </table> 45 </body> 46</html>
試したこと
共有がされていない、アクセスできないのではないか
という質問への回答があったので権限はスプレッドシートは全員見れるようにしてあります。
補足情報(FW/ツールのバージョンなど)
フォーム名:HP更新履歴
スプレッドシート名:HP更新履歴
HTML名:更新履歴
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/06 01:37
2021/08/06 02:06
2021/08/09 23:53
2021/08/10 02:26 編集
2021/08/10 05:12