2005年03月10日

VB6 IsDate関数でTrue判定してくれる区切り文字

西暦日付を”2005.3.10”というようにピリオドで入力したいと依頼されたので、入力値検証のためにIsDate関数を使ってみた。
ところが、ピリオドで入力した日付はIsDate関数ではFalse。どうやらピリオドは時間としてみているらしい。

日付でTrueだった区切り文字は「スペース(2005 3 10)、カンマ(2005,3,10)、ハイフン(2005-3-10)、スラッシュ(2005/3/10)」
時刻でTrueだった区切り文字は「コロン(23:59:59)、ピリオド(23.59.59)」

ちなみに、Format関数で"ge.m.d"を使って和暦変換はできたが、変換後の和暦"H17.3.10"はIsDate関数ではFalse。

ふううむ。

それにしても、こんな簡単な事を今頃知る私って・・・
posted by ままよ at 08:01| Comment(3) | TrackBack(0) | プログラマの走り書き | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
VBは全くわからないのですが、isDate()にデリミタを与えられるようになっているといいですよね。
関数に合わせて入力値を変えるのは面倒ですよね。
Posted by U at 2005年03月10日 12:08
■Uさん

うーん、デリミタを与える関数ですか。なるほど。
デリミタ自動判定してくれる関数があればもっといいな。っていうか、それなら関数自作すればいいのか。
やばい、手抜きプログラマという事がバレた。
Posted by ままよ at 2005年03月11日 07:24
おおっ!
10年も前に今の私と同じことに悩んでいた人がいたとは!
でも、IsDate関数の謎が解けました。ありがとうございました。
Posted by チン☆テクラ at 2016年07月19日 18:29
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/2343096

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。