回答の編集を許可するを有効にしているGoogleフォームでは、回答内容を後から編集することができます。
回答を編集するには、編集用のURLが必要ですが、このURLがわからなくなってしまった場合の調べ方を紹介します。
あなたが回答者で、フォームの編集者ではない場合、この記事の方法は利用できません。
まずは、forms-receipts-noreply@google.comからのメールを探してみてください。メールが届いている場合、そのメール内に回答の編集リンクがあります。
メールが無い場合は、フォームの作成者に相談してください。
その際に、この記事を伝えるとスムーズに進むかもしれません。
スクリプトエディタでコードを実行する
右上の三点メニューから、スクリプトエディタを起動します。
あらかじめ入力されているコード(myFunction)を削除し、当記事のコードを貼り付けます。
貼り付け後、保存してください。
貼り付けるコードは下記です。
function getEditResponseUrl() {
const form = FormApp.getActiveForm();
const responses = form.getResponses();
for (const response of responses) {
Logger.log(
"Email: " + response.getRespondentEmail() + "\n" +
"Time Stamp: " + response.getTimestamp() + "\n" +
"Edit Url: " + response.getEditResponseUrl()
)
}
}
コードを貼り付けたら、▷実行ボタンを押してください。
「承認が必要です」というダイアログが表示されますので、権限を確認 をクリックします。
* この部分の解説画像は、他の記事から流用しているため、実際のものと若干異なる場合があります。
このスクリプトを使うGoogleアカウントを選択します。
(この画面が表示された場合のみ)左下の 詳細 をクリックします。
(この画面が表示された場合のみ)左下の プロジェクト名(安全ではないページ)に移動 をクリックします。
右下の 許可 をクリックします。
スクリプトを実行すると、下図のようなログが出力されます。(そのフォームに提出された回答の数のログが出ます)
EmailやTime Stampを参考にして対象を確認し、Edit Urlを利用してください。
なお、このURLを使えば、回答者本人でなくとも回答を編集できますので、取り扱いに注意してください。(Googleフォームの仕様です)
参考:スプレッドシートにURLを出力する
先述の方法だと、回答件数が多い場合にデータを探すのが難しいかもしれません。
その場合、ログへの出力ではなく、シートに情報を出力すれば良いです。
サンプルコードは下記のとおりです。
function createEditResponseUrlSheet() {
// フォームの回答を取得
const form = FormApp.getActiveForm();
const responses = form.getResponses();
// スプレッドシート転記用の配列を作成(1行目はヘッダー行)
const values = [["Email", "Time Stamp", "Edit Url"]];
for (const response of responses) {
values.push([
response.getRespondentEmail(), // 回答者Email
response.getTimestamp(), // タイムスタンプ
response.getEditResponseUrl() // 回答編集用URL
])
}
// スプレッドシートを作成
const ssName = form.getTitle() + "_回答編集用URL一覧"
const ss = SpreadsheetApp.create(ssName, values.length, 3);
// スプレッドシートに転記
const sheet = ss.getActiveSheet();
sheet.getRange(1, 1, values.length, 3).setValues(values);
sheet.getRange(2, 2, values.length - 1, 1).setNumberFormat('yyyy/MM/dd h:mm:ss');
// スプレッドシートのURLを取得
console.log(ss.getUrl());
}
このコードを実行すると、マイドライブに新規のスプレッドシートが作成され、そこに情報が出力されます。
コメント