• ベストアンサー

エクセルVBA フォームのテキストボックスの入力規則

エクセル2000を使用しています。 VBAでフォームを作成しています。日付の入力項目をテキストボックスで 作りたいのですが、”yyyy/mm/dd”の形式で入力するようテキストボックスの中に表示し、それ以外の入力形式を制限するにはどのようにしたらよいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

個人的な意見ですが。 同様なコントロールを作成するさいに、IsDate関数を使いチェックして、DateValue関数でフォーマットを整えるという処理をよく組み込んでいました。

09051114
質問者

お礼

 素早いご回答有難うございました。  お礼を申し上げるのが遅れまして、失礼致しました。  入力ミスをなくすのにはとても良い方法だと思います。  大変参考になりました!

その他の回答 (2)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.3

手元にExcel2000が無いので確認できませんが、カレンダーコントロール(Microsoft Date and Time Picker Control)があればそれを使って日付を入力させた方が良いと思います。日付しか入りませんから テキストボックスにこだわるのでしたら、入力後に日付型かどうかをチェックする事になると思います。

09051114
質問者

お礼

 ご回答どうも有難うございました。  遅ればせながら、お礼申し上げます。  Excel2000でも、カレンダーコントロールが利用できました。  便利な機能がたくさんあるのですね。知らない事だらけです。

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.2

>”yyyy/mm/dd”の形式で入力するようテキストボックスの中に表示し テキストボックスの中ではなく、テキストボックスのプロパティの ControlTipText にコメントを書いておく、ではだめでしょうか? そうするとテキストボックスにオンマウスでコメントが表示されます。 テキストボックスの近くにラベルを配置してラベルにコメントを書いて おく、というのでもいいかと思います。

09051114
質問者

お礼

 ご回答、どうも有難うございました。  お礼が遅れましたこと、お詫び申し上げます。  ControlTipTextの機能、全く知らなかったです。  今後、上手く活用出来たらと思います。

関連するQ&A

専門家に質問してみよう