質問: google app script if分岐で否定条件ではないのにtrueを返してくる //本日分のシートへ転記 var value_torikesi=sheets[0].getrange(i,9).getvalue ; if(value_torikesi != "取消処理"){ logger.log(value_torikesi != "取消処理") ; logger.log(i) ; //sheets[1].getrange(lastrow_sh1,3,1,7).setvalues(value_moto); } この部分を ループで回し 「取消処理」と入った行をスルーするつもりなのですが、 「取消処理」と入っているにも関わらず trueを返してきます ループはすべての行を参照を確認しています 「取消処理」の入力は 手作業ではなく 自動で入ります 念のため 「取消処理」と入力されていて スルーしている行のセルを コピーして貼り付けしていますが結果は同じです (テスト中なので14行しかありませんがその中で3つくらいスルーしてくれません 考えられることを教えてください
回答: こんにちは >「取消処理」と入っているにも関わらずtrueを返してきます スクリプトから見て、trueなんでしょうね。 ありそうなのは、スペースや改行などが入っている可能性でしょうか。 テストしている表で、予定通りに判定されないセルは決まっているのでしょうから、そのセルの値に対して、 ・文字数の確認 ・1文字ずつの比較 などを行ってみれば、原因がわかるのではないかと思われます。 原因がわかれば、対処方法もおのずと見えてくるのではないでしょうか。 (他の方の回答にあるように、「含まれる」で判断すれば良さそうに思えますが、原因不明のままでは気持ち悪いですし、確実さが不明ですので)