プロが教える店舗&オフィスのセキュリティ対策術

よろしくおねがいします。

<% ydate = datepart("yyyy",now)
mdate = datepart("m",now)
ddate = datepart("d",now)
htime = datepart("h",now)
mtime = datepart("m",now)
stime = datepart("s",now) %>

このように現在の年月日時分秒を設定し、

今日は<%= ydate %>年 <%= mdate %>月<%= ddate %>日です
 時刻は<%= htime %>:<%= mtime %>:<%= stime %>です

とロジックを組んだところ、10時26分現在、

 今日は2001年 1月16日です 時刻は10:1:36です

と出力されました。どうもmtimeがmdateと同じ値、つまり”1月”が
入ってしまっているようなのです。
回避策として、

 <% mtime = datepart("m",time) %>

と、分だけNowではなくtimeで取るようにしました。結果

 今日は2001年 1月16日です 時刻は10:26:36です

と出力されました。
さて、どうしてNowのときは分が正しく認識されなかったのでしょう?
timeを使用したほうが常にいいのでしょうか?

VBSの常套手段をまだ身につけていないので、この現象に対する解説、
最善策など教えていただきたいとおもい、質問を挙げました。

よろしくお願いいたします。

A 回答 (2件)

私の見たマニュアル(名前は忘れましたが)datepartの第一パラメタの説明


として分の場合は"n"とありました。
ちなみに月は"m"でした。ご覧になった文献の誤植だったのかもしれませんね。
    • good
    • 0
この回答へのお礼

ありがとうございました。
文献のバグのようですね。
初心者なので基本的な項目にまちがいがあると
きついです(^-^;

お礼日時:2001/01/16 11:46

datepartの第一パラメタに月の場合も分の場合も"m"を指定していますよね。


分を取得したい場合は確か"n"だったような。

この回答への補足

たしかに"n"でやるとうまくいきました。
ありがとうございます。
ちなみに"m"としていたのは参考文献そのまま、文献のバグだったのでしょうか?
解釈として、月と分で"m"でかち合っていた場合、先に定義された月が優先され、
分も月の値が入った、それを避けるために分は"n"にする 
ということでしょうか?

また、べつに"n"ではなくてもいいのでしょうか?

またおしえてください。よろしくおねがいします。

ついでに、やっぱりtimeでやっても現在の時刻の取得にはなってなかったようでした。

補足日時:2001/01/16 11:07
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!