GASにおいてreplace機能を使ってスプレッドシートの操作を試みています。
その際
「TypeError:オブジェクト 〇〇 で関数 replace が見つかりません。」
というエラーが出てfanctionがストップしました。
どうやら対象のオブジェクトに数字が入力されているとエラーが出るようなのですが、これを回避してうまくreplaceしたいです。
具体的には添付写真のようなスプレッドシートにおいて特定の文字列"a"を削除したいと考えています。
添付写真のようにセルに"数字"(この場合は"6666"にあたる部分です)が入力されていると「TypeError:オブジェクト "数字"("6666") で関数 replace が見つかりません。」というエラーが出現、同じ箇所に何も入力されていないか、別の平文が入力されていればfanctionが正常に走るといった状態です。
以下のようなスクリプトを書いて試していました。
function myFunction() { var sheet = SpreadsheetApp.getActiveSheet(); var all = sheet.getDataRange().getValues(); for( var i=0; i<all.length; i++ ){ for( var j=0; j< all[i].length; j++ ){ all[i][j] = all[i][j].replace( /a/g , "" ); } } sheet.getDataRange().setValues(all); }
回避方法を教えていただきたいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/16 02:02