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

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

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

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

Q&A

0回答

2199閲覧

GASのgetActiveSheetで先頭のシートが呼ばれてしまう

TakuHosoya

総合スコア33

Google Apps Script

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

0グッド

0クリップ

投稿2018/08/09 07:25

編集2018/08/09 07:56

表題の通り、GASのgetActiveSheetで、先頭では無いシートをアクティブにした状態で実行しても、先頭のシートがアクティブシートとして取得されてしまいます。

試しに

Google

1function debug(){ 2 var sheet = SpreadsheetApp.getActiveSheet(); 3 var ASName = sheet.getSheetName(); 4}

という、アクティブシートの名前だけを取得する関数を作ってみましたが、こちらでも先頭のシート名がASNameに格納されます。

どなたが、原因がお分かりになる方がいらっしゃれば、教えて頂きたいです。

<追記>
どうやらデバッグ時のみ上記の挙動を取っている様です。

それはそれでデバッグが上手くいかずに困っております。

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

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

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

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

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

papinianus

2018/08/09 09:08

3シート目を選択した状態で、スクリプトエディタを開き、このコードを実行するとデバッグでブレークポイントを置いても、あるいはLogger.logに出力しても、3シート目の名前がログに取れるのですが、どのように操作してらっしゃいますか?
TakuHosoya

2018/08/09 09:12

デバッグに関してはブレークポイントを置いて行っています。不具合を起こすのは当該ファイルだけなので、何かコード以外の部分に原因があるのかもしれません…
papinianus

2018/08/09 09:18

再現しないので、とりあえず、新しいスプレッドシートで試していただけませんか?
TakuHosoya

2018/08/09 09:57

試してみたところ、同様に先頭のシートが選ばれてしまいました。
macaron_xxx

2018/08/10 01:33

私も再現しないですね…。
papinianus

2018/08/10 03:43

なんか遠まわりもいいとこなんですが「var ASName = SpreadsheetApp.getActiveRange().getSheet().getName();」でも同じですか?
TakuHosoya

2018/08/11 06:50

何もいじって無いつもりなのですが、自分でも再現不能になってしまいました…
papinianus

2018/08/16 03:17

お手数ですが、その旨を記載して自己解決+クローズしていただけますようお願いします
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問