• ベストアンサー

誕生日より星座を表示するには

運転免許台帳を作っています。生年月日より星座を表示したいのですが、生年が邪魔でうまくいきません、 作り方を教えていただけませんでしょうか

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

  • ベストアンサー
  • yomo3
  • ベストアンサー率32% (88/269)
回答No.3

何事もチャレンジです。 いいですねぇ。 では、少しアドバイス。 #1の方もおっしゃっておりますが、テーブル定義の段階で、生年月日のデータ型を「日付/時刻型」にしましょう。 この生年月日から月日だけを取り出すには、 1 Format([生年月日],"mmdd")関数を使う 2 Manth([生年月日]),Day([生年月日])の2つの関数を使う という2通りの方法があります。 また、日付/時刻型はシリアル値と言って、1899年12月30日0時0分0秒を起点にする、倍精度実数です。 整数部分で日付を表します。 ですから、生年月日から、その年の1月1日を引くと、1月1日を0とする通しナンバーが得られます。 星座判定に使えそうですね。 ちなみに、「その年の1月1日」は、 CDate(Year([生年月日])&"/1/1") となります。

zuisenman
質問者

お礼

ありがとうございました。 やってみます。

その他の回答 (2)

  • yomo3
  • ベストアンサー率32% (88/269)
回答No.2

使用言語とか、どううまくいかないか(こういうスクリプトを書いたが結果がこうなった、とか)などもう少し詳しい情報をお知らせください。

zuisenman
質問者

補足

アクセスで作っているのですが、初級者で何もわからない状況で見よう見まねで作っています。状況をお知らせするにもそれを説明することがわかりませんので もう少し自分なりに勉強してみます。

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.1

誕生日はDate型で設定されてますか? それなら、 Dim Sei As String Sei = Format(誕生日,"MMDD") とすれば、一月一日の方なら、変数に'0101'と入ります。4月1日の方なら'0401'です。 12月20日の方なら'1220'となります。 あとは、これを数値変換するなりして、正座の日付と比較すれば出来ませんか?

関連するQ&A

専門家に質問してみよう