ふなばです。 At 1999-08-12T22:07:35+0900 (2451403.04693JD), m / sa.to (Masahiro SATO) wrote: m> Date クラスを使って, 翌月の初めの日から 1 を引くのは m> いかがでしょうか? 僕はこれが好みです。 ちなみに、あたらしい date2 では、 Date.new3(1999,2,-1) とも書けます。 Date.new3(1582,-3,-1) や Date.new2(1582,-62) も大丈夫です。 あるいは、Time にこだわるなら、こんなかな。 class << Time def local_midnight_of_last_day_of_month(y, m) x = y * 12 + m ny = x / 12 nm = x % 12 + 1 ls = local(ny, nm) - 1 local(ls.year, ls.mon, ls.mday) end end p Time.local_midnight_of_last_day_of_month(1999,2) ふなば ただよし