• ベストアンサー

エクセルで月末を求める関数

intinの回答

  • intin
  • ベストアンサー率33% (8/24)
回答No.4

他の方も書かれていますが、1980年固定で計算してしまっているので、2月の場合には常に29日が表示されるのでしょうね。 計算式としては、文字列系関数を使うのであれば、 =DAY(DATE(1988+LEFT(A1,2),MID(A1,3,2)+1,0)) あるいは、数値計算系関数を使うのであれば、 =DAY(DATE(1988+INT(A1/10000),MOD(INT(A1/100),100)+1,0)) というのが綺麗だと思います。 ※計算結果に影響はでないと思いますが、意味合い的には、 MOD(A1/100,100)+1 ではなく、 MOD(INT(A1/100),100)+1 のほうが、いいと思います。

参考URL:
https://www.excelspeedup.com/getsumatsu/
noname#226159
質問者

お礼

ありがとうございます。 締切と同時に回答を送信してくださったみたいで、お返事が間に合いませんでした。 文字列系とか数値計算系とかあるのですね。 その言葉は初めて知りました。参考になります。

関連するQ&A

  • エクセル関数について質問です。

    はじめて投稿します。 エクセルで今日から半年後-1日(と今日から一年-1日)の表示が出来るようにしたいのですが、 どのようにしたら出来ますか? =DATE(YEAR(A1),MONTH(A1)+6-1,DAY(A1-1)) 上記で入力したみましたが、2011/06/01から半年-1は 2011/11/30 となってほしいのに 2011/12/01 となってしまいました。 教えてください。よろしくお願いします。

  • access 小数点について

    現在 IIf(Day(Date())>=Day([入]),DateDiff('m',[入],Date())\12 & '年' & DateDiff('m',[入],Date()) Mod 12 & 'ヶ月',(DateDiff('m',[入],Date())-1)\12 & '年' & (DateDiff('m',[入],Date())-1) Mod 12 & 'ヶ月') 上記式にて何年何ヶ月と表示させていますが これを4年5ヶ月=4.5などに変更するにはどのようにすればよいのでしょうか? ご指導ください よろしくお願いいたします。

  • エクセルで月末を求める計算式

    エクセルで月末を求める計算式 下記の式ですが、月末の日付が正常に表示されません。 どこか間違いがありましたらご指導お願い致します。 =IF(B3="","",DAY(DATE(YEAR(TODAY()),MONTH(TODAY())+1,0)))

  • エクセルの関数

    A1に 2019/09/00 と標準に設定をして 日時が入っています。 日は00にしたいのでこの表示しかできません。 この場合、月の9を使って前月の月を表示させたいときはどういう式をいれたらいいのでしょうか? 1月と表示させたいセルがあったとしたら、 2019/12/00 を使ってどう表示させたらいいのでしょう?

  • エクセルの関数

    Aに 281100 と入っているときに Bに 281200と自動表示させたいです。 Aが281200の場合は Bは290100となるようにしたいです。 両方を満たす式を教えてください。 ちなみに、日付です。28年12月00日(日付は別の場所で指定します) エクセル2010です。

  • ExcelでDATE関数から主とした値から、月、日を別に取得したい

    今、Excelでカレンダーを作っていて、 A1のセルにはDATE(年,月,1)が入っており、 (その下の行はA1+1でオートフィルさせています。) A2、A3のセルには月と日をそれぞれ出力したいので A2にはMONTH(A1)A3にはDAY(A1)と式を入れているのですが うまく月日が表示されません。 何がいけないのでしょう。エクセル初心者で初歩的な質問ですが 詳しい方がいたらご教授願います。

  • エクセル2003の関数について

    =ROUND((A1*B1)*10^(3-INT(LOG(ABS((A1*B1)))))-(MOD((MOD((A1*B1)*10^(3-INT(LOG(ABS((A1*B1))))),100)-5),20)=0),-1)/10^(3-INT(LOG(ABS((A1*B1))))) という数式で有効数字3桁に丸め、尚且つ4桁目が 「5」の場合3桁目が偶数の場合に切り捨て、奇数の場合には切り上げするようにしました (例:123.5→124、122.5→122、122.51→123、1.235→1.24) A1もしくはB1に数字が入っていない場合、「#NUM!」と出ます。 このエラーを表示しない関数(ISERROR)を上記に組み込みたいのですが、うまく組み込みができません。 希望は関数を使用したエラーの非表示ですが、他にナイスな方法があれば教えて下さい。 宜しくお願い致します。

  • 月末を動的に表示、非表示にする

    エクセルで、年、月を入力するとその月の日付が動的に表示されるものを作っています。 月末の問題で、31日の日もあれば30日の日もあるため、 DATE(YEAR(年),MONTH(月)+1,1)-1で月末を求め、IF文で制御しようと、 IF((DATE(YEAR(年),MONTH(月)+1,1)-1)=31,"31","")という式を入れているのですが、 30日の月も、31日の月も日が表示がされません。 どこに問題があるのでしょうか。かなり切羽詰っています。 エクセルの関数は苦手のため、 お詳しい方がいらっしゃいましたらご回答お願いします。

  • DATE関数の後ろに言葉を追加できますか?

    DATE関数の後ろに文字を表示させることは可能でしょうか? 例えば ●年●月●日が締切です。  となるように一つのセルに表示されるようにしたいのですが・・・、=DATE(YEAR($A$3),MONTH($A$3),DAY(A13)+5)&"締切です"と入れてもうまく表示ができません。他に方法があるか探しているのですが見つからなくて困っています。よろしくお願いします。

  • エクセルの関数

    =COUNTIFS(A10:A47,"一日有休",B10:B47,">=" & DATE(YEAR(E11)-1,MONTH(E11),DAY(E11)),B10:B47,"<" & E11) 上記の数式をJ11に入力してますが動きません。 (A10:A47)には一日有休などの文字が(B10:B47)には有給取得日が E11には有給付与日が2010/10/1等 結果が0になります。 どこが、がいけないのでしょうか