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

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

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

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

Q&A

解決済

1回答

946閲覧

幅を変えたときに幅を変えたシートを入手する

3_April_2021

総合スコア48

Google Apps Script

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

0グッド

1クリップ

投稿2021/10/07 06:44

ポジション3のシートの幅を変えたときに、そのシートを取ることはできますか。


目的のスプレッドシート(ss)でポジション3のシートの行幅を変更すると、トリガーによって呼び出された関数testは「1番目のシート:A1」を返しました。

gs

1function test(e){ 2const sheet = ss.getActiveSheet(); 3const range = sheet.getActiveRange(); 4Logger.log(`${sheet.getIndex()}番目のシート:${range.getA1Notation()}`); 5//1番目のシート:A1 6Logger.log(e.changeType);//OTHER 7}

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

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

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

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

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

guest

回答1

0

ベストアンサー

できないと思います。

変更時のインストーラブルトリガーはイベントオブジェクトに編集内容を含みません。

コメントやメモの編集を試しましたが、ご確認のとおり最初のシートの A1 セルをアクティブにしていることになったので、そういうものと割り切るしかなさそうです。

幅の変更を知ってどうしたいか次第で別の方法があるかもです。

投稿2021/10/08 20:08

papinianus

総合スコア12705

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

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

3_April_2021

2021/10/08 21:59

確認に感謝します。ただ、「編集内容」が指すものが明確に読み取れなかったため、念の為書きます。「変更時のインストール可能なトリガー」は、この問題の条件の1つにすぎないようです。
3_April_2021

2021/10/08 23:57

コメントやメモは使ったことがないので何か勘違いしているかもしれませんが、少なくとも右クリックメニューから実行される「コメント」と「メモの挿入」ならOTHER(EDITではない)なので、今は「編集内容」をrange(valueやoldValueではない)だと推測しています。 「OTHERの場合、rangeがないことがActive系メソッドに影響する」という考えですか?
3_April_2021

2021/10/09 00:40

「変更時のインストーラブルトリガー」自体が問題だという考えの場合、 もし結果を確認したのがコメントやメモだけではないのなら、他はどういう条件で同じ結果が得られたのか知りたいと思います。一つ前に書いた右クリックコメント/メモなら同じ結果を確認できますが、私の環境では、試された範囲の結果からはchangeTypeによって結果が分類されます。FORMAT、EDITは期待した範囲をそのまま返します.。INSERT_GRID,REMOVE_GRID,OTHERは「1番目のシート:A1」を返します。それ以外はシートは取得しますがrange.getA1Notation()は「#REF!」を返します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問