回答編集履歴
2
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
「(myCell.getColumn()==3 ~~」
|
3
3
|
から察するに、アクティブセルが3列目に該当することを期待しているようですが、
|
4
4
|
(シートに手入力するのではなく)フォーム回答時に自動入力される場合、
|
5
|
-
|
5
|
+
この方法は使えません。
|
6
6
|
|
7
7
|
もし似たような考え方で実装したいなら
|
8
8
|
・ getLastRow で入力のあった行を取得し、その3列目が「参加者」ならばメール送信
|
1
test
CHANGED
@@ -1,22 +1,23 @@
|
|
1
1
|
元のコードの
|
2
2
|
「(myCell.getColumn()==3 ~~」
|
3
|
-
から、アクティブセルが3列目に該当することを期待しているようですが、
|
3
|
+
から察するに、アクティブセルが3列目に該当することを期待しているようですが、
|
4
|
-
シートに手入力するのではなく
|
4
|
+
(シートに手入力するのではなく)フォーム回答時に自動入力される場合、
|
5
5
|
1つ1つのセルがactiveセルになることはありません。
|
6
6
|
|
7
7
|
もし似たような考え方で実装したいなら
|
8
8
|
・ getLastRow で入力のあった行を取得し、その3列目が「参加者」ならばメール送信
|
9
|
-
とすればよいでしょう。
|
9
|
+
とすればよいでしょう。(下記)
|
10
|
-
```js
|
10
|
+
```js)
|
11
11
|
function notification() {
|
12
12
|
const recipient = 'sample@co.jp'; //通知を飛ばす先のgメールアドレス
|
13
13
|
const subject = '【Googleフォーム新規回答あり】';//通知タイトル
|
14
14
|
const body = 'https://docs.google.com/spreadsheets/d/sample';//確認するシートのURL
|
15
15
|
|
16
16
|
var mySheet = SpreadsheetApp.getActiveSheet(); //シートを取得
|
17
|
+
|
17
|
-
var lastRow = mySheet.getLastRow();
|
18
|
+
var lastRow = mySheet.getLastRow(); // 入力のあった行を取得
|
18
|
-
var myCell = mySheet.getRange(lastRow, 3).getValue(); //
|
19
|
+
var myCell = mySheet.getRange(lastRow, 3).getValue(); //C列(3列目)の値を取得
|
19
|
-
if (myCell == "参加者") { //C列に参加者と入力があったか判定
|
20
|
+
if (myCell === "参加者") { //C列に参加者と入力があったか判定
|
20
21
|
GmailApp.sendEmail(recipient, subject, body);//通知メールを送信
|
21
22
|
}
|
22
23
|
}
|