現在時刻に時間を足すNo.29792
いちもんじ さん 07/01/09 20:37
 
いちもんじ です。
只今,
 秀丸メール Ver.4.71
 秀丸    Ver.6.50β12
を使用中です。

唐突ですが。
帰るコールをするメールを打とうと思います。

 今の時刻の1時間30分後に家に着くので,現在時刻に1時間30分を足し
て,「○○時○○分ごろ着きます」というように記入しようと思います。
 
 1日後とか1週間後とか計算できる
  $(ShiftDate, 文字列, 計算式)
 はありますが,
 1時間後とか30分後とか計算できる
  $(Shifttime, 文字列, 計算式)
 などという関数(?)はないのでしょうか?

 $(Shifttime,$(CurrentDate,"hh:mm:ss"),"01:30:00")
  な感じですが。

[ ]
RE:29792 現在時刻に時間を足すNo.29796
三月 さん 07/01/10 07:18
 
> 今の時刻の1時間30分後に家に着くので,現在時刻に1時間30分を足し
>て,「○○時○○分ごろ着きます」というように記入しようと思います。
> 

以下のようなマクロで、「○○時○○分ごろ着きます」ってのを
挿入できます。
テンプレートと組み合わせると良いかも。
//------------------
#h = val(hour);
#m = val(minute);

#h = #h + 1;  // 1時間足す
#m = #m + 30; // 30分足す
if( #m >= 60 ){
 // 60分を超えていた場合、時に繰上げ
 #h = #h + 1;
 #m = #m - 60;
}
// 24時を超えても0に戻さないほうがよさそうなので
// 調整なし
$tim = str(#h) + "時" + str(#m) + "分ごろ着きます";
insert $tim;
//-------------------

[ ]
RE:29796 現在時刻に時間を足すNo.29803
秀まるお2 さん 07/01/10 10:50
 
 テンプレートの命令としては、そういう時間の足し引き関数は無いです。なの
でマクロを使って計算してもらうしか無いです。

 せっかくなので、次の秀丸メールにて、ShiftDate関数を少し拡張します。足
し引きしたい日数の後ろにピリオド区切りで時間指定出来るようにして、さらに
その後ろにピリオド区切りで分指定も出来るようにします。

 例えば30分後なら、

 $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.0.30")

 って使えるようにします。(次のV4.72β1にて)

[ ]
RE:29803 現在時刻に時間を足すNo.29808
いちもんじ さん 07/01/10 13:09
 
いちもんじ です。

 三月さん。早速ありがとうございました。

> せっかくなので、次の秀丸メールにて、ShiftDate関数を少し拡張します。足
>し引きしたい日数の後ろにピリオド区切りで時間指定出来るようにして、さらに
>その後ろにピリオド区切りで分指定も出来るようにします。

 秀まるお2 さん
 大変,ありがたい回答ありがとうございました。
 時間指定できるといろいろと使えそうです。ベータ版のリリースを期
待しております。

[ ]
RE:29803 現在時刻に時間を足すNo.29911
いちもんじ さん 07/01/16 11:37
 
いちもんじ です。
只今,
 秀丸メール Ver.4.72β1
 秀丸    Ver.6.50β13
を使用中です。

> 例えば30分後なら、
>
> $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.0.30")
>
> って使えるようにします。(次のV4.72β1にて)

2007/01/16 11:33に
$(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.1.30")

とすると
 Thu, 11 Jan 2007 11:03:36 +0900
となります。結果が至極 変です。

それから,例えば30分後という事例は
 $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.0.30")
ではなくて
 $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.30.0")
                      ~~
という気がしますがいかがでしょう?

[ ]
RE:29911 現在時刻に時間を足すNo.29922
秀まるお2 さん 07/01/16 17:01
 
 ShiftDate関数の第1パラメータに渡す文字列は、Date:ヘッダに入っているよ
うな形式の文字列でないとダメです。なので、

> $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.1.30")

 ではうまく動作しなくて、

  $(ShiftDate,$(CurrentDate),"+0.1.30")

 みたいに書かないとダメです。

[ ]
RE:29922 現在時刻に時間を足すNo.29924
いちもんじ さん 07/01/16 17:26
 
いちもんじ です。
只今,
 秀丸メール Ver.4.72β1
 秀丸    Ver.6.50β13
を使用中です。

> ShiftDate関数の第1パラメータに渡す文字列は、Date:ヘッダに入っているよ
>うな形式の文字列でないとダメです。なので、
>
>> $(ShiftDate,$(CurrentDate,"hh:mm:ss"),"+0.1.30")
>
> ではうまく動作しなくて、
>
>  $(ShiftDate,$(CurrentDate),"+0.1.30")
>
> みたいに書かないとダメです。

 ご教示いただいた記述で,希望の時刻にはなりました。
 しかし,hhと0,mmと1,ssと30が対応していないから,なんだか分か
りにくいですね。
 
 いろいろやってみてわかったのですが
 "+0.1.30" は
  0日1時間30分後
 という意味なんですね。

[ ]
RE:29924 現在時刻に時間を足すNo.29929
秀まるお2 さん 07/01/16 21:10
 
>  いろいろやってみてわかったのですが
>  "+0.1.30" は
>   0日1時間30分後
>  という意味なんですね。

 そういうことになります。

[ ]