前提
GASについての質問と相談になります。当方、GAS初心者、プログラミング未経験です。
スプレッドシートの、『シート名1』というシートのA列に文字列が入っており、B列に日付が入力されています。
A列の文字列に、『あ』または『い』という文字が文字列の一番最後に入力されていたら、別シートの『記載先』にA列とB列の日付を上から順番に転記、
A列の文字列に『あ』または『い』という文字が含まれていない場合行ごと削除したいと考え、
下記のようなコードを書いてみたのですが、期待通りの動きをせず、こちらに質問をさせていただきました。
どなたか改善のアドバイスや、修正点等ありましたらご指摘いただけませんでしょうか。
何卒よろしくお願いいたします。
実現したいこと
①Aの文字列に、『あ』または『い』という文字が文字列の一番最後に入力されていたら、別シートの『記載先』にA列とB列の日付を上から順番に転記
②A列の文字列に『あ』または『い』という文字が含まれていない場合行ごと削除したい
発生している問題・エラーメッセージ
①上から順番ではなく、元シートの行数の箇所に転記されてしまう
②削除してほしい箇所ではない行が削除されてしまう
function myFunction() { var ssid ="URL" var ssname ="シート名1" var ss =SpreadsheetApp.openById(ssid).getSheetByName(ssname) var lastRow = ss.getLastRow() var ssi =SpreadsheetApp.openById(ssid).getSheetByName("記載先") for(var i = 1 ;i<=lastRow ; i++){ var y =ss.getRange(i,1).getValue() var y_day =ss.getRange(i,2).getVlue() if(y.lastIndexOf("あ")!=-1 || y.lastIndexOf("い")!=-1){ ssi.getRange(i,1).setValue(y) ssi.getRange(i,2).setValue(y_day) }else{ ss.deleteRow(i) } } }

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/01/11 08:18
2023/01/11 08:25