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

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

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

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

2回答

697閲覧

追加した列の範囲をトリガーによって呼び出された関数から取得したい

3_April_2021

総合スコア48

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

1クリップ

投稿2021/10/04 17:13

目的のシート(sheet)D列で「1列を右に挿入」すると、トリガーによって呼び出された関数test2は#REF!を返します。関数test2は、関数test1と同じ結果を得ることができますか?

gs

1function test1(){ 2const A1Notation = sheet.getActiveRange().getA1Notation() 3Logger.log(A1Notation);//E:E 4} 5 6function test2(e){ 7Logger.log(e.changeType);//INSERT_COLUMN 8const A1Notation = sheet.getActiveRange().getA1Notation(); 9Logger.log(A1Notation);//#REF! 10}

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

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

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

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

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

guest

回答2

0

ベストアンサー

原因はわからないけど changeトリガーで 行、列の挿入時は getA1Notationが使えないですね。
getColumnで代用する方法はどうでしょうか?

gas

1function test2(e){ 2 Logger.log(e.changeType);//INSERT_COLUMN 3 var sheet = SpreadsheetApp.getActiveSheet(); 4 var col = sheet.getActiveRange().getColumn(); 5 Logger.log(col); 6}

投稿2021/10/05 01:30

sawa

総合スコア3002

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

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

0

単一列操作を行うと思われるメソッドで少なくとも次の5つのメソッド(sheetクラス)を確認しますが、autoResize- / delete-はparameterがIntengerでgetLast-はreturnがIntenger、hide-/unhide-はparameterがrangeですが、例ではfirst columnの操作に"A1"が使用されています。また、単一列操作時にgetRow()の値を確認したところ、1に固定されているように見える結果を確認します(*Logger.log(e.changeType);//INSERT_COLUMN,REMOVE_COLUMN)。

sheet.getActiveRange().getRow().getColumn()
1列を右に挿入(D列選択)15
1列を左に挿入(D列選択)14
列を挿入(D2選択)14
列を削除(D列選択)14
列を削除(D2選択)14

なぜ#REFというエラーになるのかはいまだにわかりませんが、これらの動作から、列操作では"E:E"のような指定が想定されていない可能性を感じています。

投稿2021/10/09 03:10

編集2021/10/09 03:17
3_April_2021

総合スコア48

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

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

3_April_2021

2021/10/09 06:20

原因と思われるものを見つけました。 getNumRows()は0です。回答に奇妙なことを書いたり、今試したところ、一つ目のE:Eを再現できなかったりしたため、いろいろ確認後でまとめて情報を追加しようと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問