前提・実現したいこと
現在スプレッドシートでGASを使って開発しており、
ある場所から吐き出された既存データを、必要な列だけ切り抜いて
最後尾の列に出力し、その範囲をコピーして別シートに出力すると言う作業の途中で出てきた問題です。
[空欄なし][886などの国番号をとる][先頭に0をつける]
このような条件のもとで出力したいと思っております。
0992672541
0192865827
090276154
0998726514
どなたかGASに詳しい方ご教授いただけると幸いです。????♂️
発生している問題・エラーメッセージ
886と空白は削除できたが、先頭の0がつかない
該当のソースコード
GAS
1 //電話番号の空白を削除する 2 //886が先頭についた際には削除するプログラム 3 var phone = sheet.getRange("CD1:CD100").getValues(); 4 var phoneValue={}; 5 var count=phone.length; 6 for(var i=0;i<count;i++) 7 { 8 phoneValue[i]=phone[i]; 9 var needPhone=String(phoneValue[i]).replace(" ","").replace(" ",""); 10 // 電話番号の分岐処理、886を消したい 11 if (needPhone.match(/^886/)) { 12 needPhone = String(needPhone).slice(3,12); 13 } 14 //先頭に0をつけたい 15 needPhone = "0" + needPhone; 16 //別の列に出力 17 sheet.getRange(i+1,82).setValue(needPhone); 18 }
試したこと
電話番号を文字列にして、先頭に0をつけたがつかなかった
補足情報(FW/ツールのバージョンなど)
私自身GASは触った事がなく、今回自分で書いたプログラムもつぎはぎだらけの醜いものになっており、
人に見せるのも恥ずかしいプログラムであることは承知の上で質問されてもらいます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/07 08:27