Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13033 / 13646 ツリー ←次へ | 前へ→

【7357】8桁の数字を日付として評価できるかチェック kawata 03/9/3(水) 10:03 質問
【7358】Re:8桁の数字を日付として評価できるかチェ... INA 03/9/3(水) 10:59 回答
【7359】Re:8桁の数字を日付として評価できるかチェ... kawata 03/9/3(水) 11:09 お礼

【7357】8桁の数字を日付として評価できるかチェッ...
質問  kawata  - 03/9/3(水) 10:03 -

引用なし
パスワード
   kawataです、お世話になっております。
よろしくお願いします。
(Windows2000/Excel2000)

テキストボックスから取得した8桁の数字を実行ルーチンへ渡す前に
その数字が日付かどうかをチェックしたいのですが。
入力形式が、yyyymmddの8桁というのは、使う側の要望です(^^;。

・頭が"20"、かつ、8桁、かつ、数字のみ

  If Left(j_day, 2) <> "20" Or Len(j_day) <> 8 Or _
    IsNumeric(j_day) = False Then
    form_flg = 0: GoTo replay
  End If

ってとこまでは自分で考ええたのですが、この8桁を日付として評価
したい場合は、どういうコードになるのでしょうか?。
Midで、月、日を抜き出して、
mm >= 01 AND mm <= 12 
dd >= 01 AND dd <= 31 を組み込むのはは考えましたが
もっとスマートな方法があるような気がしまして。
(上の場合、小の月、2月等は、また面倒だし(^^;)

入力した8桁の数字が、日付として有効か無効かの判定です。
ぜひ、よろしくお願いします。

【7358】Re:8桁の数字を日付として評価できるかチ...
回答  INA  - 03/9/3(水) 10:59 -

引用なし
パスワード
   あとは、IsDate 関数 を使うとか?

【7359】Re:8桁の数字を日付として評価できるかチ...
お礼  kawata  - 03/9/3(水) 11:09 -

引用なし
パスワード
   kawataです、よろしくお願いします。

INAさん、ありがとうございました。

>あとは、IsDate 関数 を使うとか?

チェックしました。

IsDate(Format(j_day, "####/##/##")) = False ←日付でない!

ですね、う〜む、教えていただいたらとっかかりをつかめるのですが、
自分で考えてると、なかなかでてきません。

ありがとうございました、解決です。
また、よろしくお願いします。

13033 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free