質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google+

Google+とは、Googleが提供するソーシャル・ネットワーキング・サービスです。情報を共有するユーザーの範囲を設定する「サークル」、Webカメラで複数名の相手と無料でビデオチャットできる「ハングアウト」などの機能があります。

Google スライド

Google スライドは、Google社が提供している文書作成ツール。Googleアカウントがあれば利用が可能です。プレゼンテーション用テンプレートフォーマットやフォントなどが多く用意されています。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

2回答

2835閲覧

Google スプレッドシートの特定の行が更新された場合にGmailでNotification を受け取る方法

退会済みユーザー

退会済みユーザー

総合スコア0

Google+

Google+とは、Googleが提供するソーシャル・ネットワーキング・サービスです。情報を共有するユーザーの範囲を設定する「サークル」、Webカメラで複数名の相手と無料でビデオチャットできる「ハングアウト」などの機能があります。

Google スライド

Google スライドは、Google社が提供している文書作成ツール。Googleアカウントがあれば利用が可能です。プレゼンテーション用テンプレートフォーマットやフォントなどが多く用意されています。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

0クリップ

投稿2019/04/22 18:28

Google スプレッドシートの指定した行のみが更新された場合にGmailでNotification を受け取りたいと思っています。
以下のコードで実行できるかと試したところ、
「TypeError: オブジェクト Range で関数 getA11Notation が見つかりません」
と出てきました。このコードで間違いはありますか?

'スプレッドシートの名前';
function sendNotification() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("シートの名前");

const cell = ss.getActiveCell().getA11Notation();
const columnNameInAlphabet = cell.replace(/\d+/,'');
//通知対象者と対応するメール通知先を連想配列で格納
const recipients = {
'宛先名':'メールアドレス'

};
//更新行のA列の値を取得
const person = sheet.getRange('A'+ sheet.getActiveCell().getRowIndex()).getValue();
//メールの件名と本文を指定
const subject = '【更新】'+ss.getName();
const body = person + 'の行が更新されました。\n' + ss.getUrl() + '\n更新対象は' + columnNameInAlphabet +'列です。';
//更新された行が通知対象の行を含む場合はメールを送る
if (person in recipients == true){
MailApp.sendEmail(recipients[person], subject, body);
}
};

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

javascript

1function onEdit(e) { 2 const sheet = e.range.getSheet(); 3 const r = e.range.getRow(); 4 //const c = e.range.getColumn(); 5 const person = sheet.getRange(r, 1).getValue(); 6 const recipients = {}; 7 const to = recipients[person]; 8 if(!to) return; 9 const spreadsheet = e.source; 10 const a1note = e.range.getA1Notation(); 11 const subject = "【更新】"+spreadsheet.getName(); 12 const body = [person+"の行が更新されました",spreadsheet.getUrl(),"更新対象は"+a1note.replace(/¥d+/,"")+"列です"].join("¥n"); 13 MailApp.sendEmail(to, subject, body); 14}

投稿2019/04/29 15:23

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

全部は見てませんが、getA11NotationのところでA11になってます。正しくはA1です

投稿2019/04/22 22:20

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問