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