回答編集履歴
2
試行結果の画像を添付
test
CHANGED
@@ -52,6 +52,9 @@
|
|
52
52
|
}
|
53
53
|
```
|
54
54
|
|
55
|
+
### セルを編集したときの通知の画像
|
56
|
+
|
57
|
+
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-04-24/afa3b0c6-7ad3-4b11-ab78-bbe2f6e4a726.png)
|
55
58
|
|
56
59
|
|
57
60
|
|
1
エラー発生を回避するコードとシートの指定を加えた。
test
CHANGED
@@ -1,8 +1,4 @@
|
|
1
|
-
実現したいことがよくわからないです。
|
2
|
-
|
3
|
-
A3:AとB3:Bの書き込み内容を通知したいと書いてありますが、
|
4
|
-
|
1
|
+
特定のシートの特定の二つの列に書き込みがあったら、
|
5
|
-
|
6
2
|
書き込みがあった行のA列のセルとB列のセルの値をGoogleChatに通知するのであれば、
|
7
3
|
次のようなコードを書けると思います。
|
8
4
|
|
@@ -13,14 +9,20 @@
|
|
13
9
|
* 編集されたセルを取得できないのでエラーになります。
|
14
10
|
*/
|
15
11
|
function sheetToGoogleChat(e) {
|
12
|
+
if(!e) {
|
13
|
+
console.log('このスクリプトは、セルが編集された時に起動するようにトリガーを設定するものです\nエディタからは実行できませんのでトリガーの設定後にセルを編集してください');
|
14
|
+
return;
|
15
|
+
}
|
16
|
-
//
|
16
|
+
// シート名と二つの列を指定
|
17
|
+
const sheetName = '手上げ'; // 確認するシート名
|
17
18
|
const column1 = 1; // A列
|
18
19
|
const column2 = 2; // B列
|
19
20
|
|
20
|
-
// 編集されたセル
|
21
|
+
// 編集されたセルが対象のシートなら対象の列か確認
|
21
22
|
const range = e.range;
|
23
|
+
const sheet = range.getSheet();
|
22
24
|
const column = range.getColumn();
|
23
|
-
if ([column1, column2].includes(column)) {
|
25
|
+
if (sheet.getName() === sheetName && [column1, column2].includes(column)) {
|
24
26
|
// 両方の列のセルに表示されている文字列を取得して確認
|
25
27
|
const value1 = range.offset(0, column1 - column).getDisplayValue();
|
26
28
|
const value2 = range.offset(0, column2 - column).getDisplayValue();
|
@@ -31,7 +33,6 @@
|
|
31
33
|
}
|
32
34
|
}
|
33
35
|
}
|
34
|
-
|
35
36
|
|
36
37
|
/* Google Chat */
|
37
38
|
function notifyGoogleChat(value1, value2) {
|