teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

コードを再度他のもので試してみたので更新しました。

2021/11/23 06:33

投稿

araki11
araki11

スコア4

title CHANGED
File without changes
body CHANGED
@@ -6,41 +6,29 @@
6
6
 
7
7
 
8
8
  <コード>
9
- function test() {
9
+ function sendNotification() {
10
- var ss = SpreadsheetApp.getActiveSpreadsheet();//スプレッドシートを取得
10
+ const ss = SpreadsheetApp.getActiveSpreadsheet();
11
- var sh=ss.getSheetByName("管理表");
11
+ const sheet = ss.getSheetByName("管理表");
12
- var rowSheet=sh.getDataRange().getLastRow();//使用している範囲の最終行を取得
13
- var myCell = sh.getActiveCell(); //アクティブセルを取得
12
+ const cell = ss.getActiveCell().getA1Notation();
14
-
15
- //○○の部分は完了とかのステータスが入る列番号
16
- if ( sh.getRange('A' + myCell.getRow()).getValue() !== '完了'){
13
+ const columnNameInAlphabet = cell.replace(/\d+/,'');
17
- return;
18
14
  }
19
15
 
20
- var Name=sh.getRange(myCell.getRow(),18).getValue();//名前
21
- var To={'○○':'○○@gmail.com'
22
- };//アドレス
16
+ function mailsend(){
23
- var Cc1="○○@gmail.com";//アシスタント
17
+ const to ="××@gmail.com"
24
18
 
19
+ //更新行のC列の値を取得
25
- var person = sh.getRange('R' + myCell.getRow()).getValue();
20
+ const person = sheet.getRange('C'+ sheet.getActiveCell().getRowIndex()).getValue();
21
+ //メールの件名と本文を指定
22
+ const subject = '【更新】'+ss.getName();
23
+ const body = person + 'の行が更新されました。\n' + ss.getUrl() + '\n更新対象は' + columnNameInAlphabet +'列です。';
26
24
 
27
- var Subject = '件名'; //
28
- var Body = '本文'; //
25
+ //更新された行が通知対象の行を含む場合はメールを送る
29
-
30
- if (person in To == true){
26
+ if (person in recipients == true){
31
- MailApp.sendEmail(To[person],Subject, Body,{cc:Cc1});//メールを送信}
27
+ MailApp.sendEmail(recipients[person], subject, body);
32
-
28
+ }
33
29
  }
34
- }
35
30
 
36
- [参考にしたURLリンク](https://teratail.com/questions/160617)
37
- 上記コードは、リンク先の内容に対してメールアドレスや参照する列などの情報を変えてみたりしました。特に、var Name=sh.getRange(myCell.getRow(),18).getValue();//名前
38
- ここの列の18などは何を指しているのかわからずどのように変更しようか悩んでおりました。
39
31
 
40
-
41
- →とても初心者のような質問で大変申し訳ありませんが...
42
- 現在スプレッドシートのGASでは①と②でファイルを分けて作成していますが、一つにファイル上に記載しても問題ないと認識しています。その場合、コード記載の際には冒頭に記載した実現したいことの①の内容と②の内容どっちが上の方が好ましいとかもしあったら教えていただけると幸いです。
43
-
44
32
  ![スプレッドシート](bbcf06549252a0866e6e0ac4503c6dde.png)説明](a1582a508f57a53c6ff6ecf3bb5cab52.png)](9a670f8f7d90ae4d13de9f5889fe5c2d.png)
45
33
 
46
34
  よろしくお願いいたします。