Webサービス

【GAS】getRangeで「範囲は見つかりませんでした」#Googleスプレッドシート

@rabirgoです。

GAS (Google Action Script) トラブルシューティングです。

Google スプレッドシート getRange でエラー

sheet.getRange(“R11:BC11”) のような a1Notation と名付けられてるらしい表記(A1表記またはR1C1表記 とも言う?)が

「範囲は見つかりませんでした」

で動作せず、検索してもすぐ分からなくて
10分くらい悩んだのでメモしておきます。

結論は単純なコーディングミス

以下のコード例、sheet.getRange の引数が間違ってるんですが、分かります?

protection.push(sheet.getRange("R"&i&":BC"&i));

文字列連携は + が正しいのに & で実装してたからですね。汗

デバッグ文も

 Browser.msgBox("log=R"& i &":BC"&i)

とやらかしてしまい、値としては 0 が入ってきてて悩んでしまいました。

さらに & が間違ってることに気づいた後もデバッグ文だけ直して処理を直してなかったので数分悩んでしまいました。そのことに気づいて脱力。笑

VBA の文字列連結演算子が & なので、つい癖でこうなってしまった次第です。
(VBA もちょこちょこ書いてます)

さいごに

間の抜けたコーディングミスで、検索に頼ってしまって反省です。

printf 的な関数ないのかなと思って検索したら、Utilities.formatString ってのがあるんですね。これ使おう・・

ABOUT ME
rabirgo
うさぎ年(rabbit)おとめ座(virgo)生まれの rabirgo です。 2019年よりフリーランスとして活動しています。 よかったら Twitter フォローお願いします! Follow @rabirgo

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です