tag:crieit.net,2005:https://crieit.net/users/tanakaQiita/feed tanakaQiitaの投稿 - Crieit CrieitでユーザーtanakaQiitaによる最近の投稿 2021-08-14T18:58:28+09:00 https://crieit.net/users/tanakaQiita/feed tag:crieit.net,2005:PublicArticle/17600 2021-08-14T18:58:28+09:00 2021-08-14T18:58:28+09:00 https://crieit.net/posts/GAS-611793c436908 【分かる方教えてください】GASで、スプレッドシートに入力した値と、現在の日(年・日時ではなく、「日」のみの値が合致しているかどうか) が同じであれば、チャットワークにその値を表示する というプログラムを作成しています。 <p>プログラム自体にエラーは出ていないのですが、スプレッドシートに「14」と入力しているけれど(本日の日と合致しているけれど)、<br /> チャットワークにelseの値(15)がに表示されてしまうため、正しく日を拾えていないかと思います。<br /> 理由が分かれば教えていただきたいです。よろしくお願いします。</p> <p>以下コード</p> <p>===</p> <p>function myFunction() {</p> <p>//スプレッドシートの、特定の範囲を読み込む<br /> var sheet = SpreadsheetApp.getActiveSheet();<br /> var x = sheet.getRange(2,1).getValue();</p> <p>//日付の定義(日を取得する)<br /> var date = new Date<br /> var day = date.getDate();<br /> var yesterday = date.getDate(day-1);<br /> var tomorrow = date.getDate(day+1);</p> <p>//入力した日と条件が合致していれば、(CWに値を表示する)<br /> if( x > yesterday && x < tomorrow)<br /> {</p> <p>x=x;</p> <p>}</p> <p>else{</p> <p>x=x+1;</p> <p>}</p> <p>var client = ChatWorkClient.factory({token: '8314e1a8f4c4e0c5891d1d90f731e85b'});<br /> client.sendMessage({room_id:100266334, body:x});</p> <p>}</p> tanakaQiita