• ベストアンサー

文字列を年月に変換して、差を月数で計算したい

FEX2053の回答

  • FEX2053
  • ベストアンサー率37% (7988/21361)
回答No.3

#1さんのDATEDIF関数ですが、バグがあって「経過月数」の計算が正しくない事があるんです。式をテストしたわけじゃないので何とも言えませんが、条件的に引っ掛かりそうな気がします。実際にお使いになる場合は、以下のurlを確認された方が良いと思います。 http://www.niji.or.jp/home/toru/notes/50.html

YYae
質問者

お礼

ありがとうございます。 確認してみます。

関連するQ&A

  • Excel 年月の差を求めたい

    Excel2007です。 年月の差を求めたいのですが 入力の方法と計算式を教えてください。 5年と3年2ヶ月の差を1年2ヶ月と計算したい。 文字列として入力すると計算ができません。 どのように入力して、どのように計算式又は関数を使えばよいか教えてください。 わかり難い質問かも知れませんがよろしくお願いします。

  • 月数の計算

    月数の計算で「何ヶ月目」か計算したいのですが、どのように関数を入れればいいでしょうか? (例)始まりが2月の日にちの場合(2/2でも2/25でも)は、2月中は全て1ヶ月目と表示させていのです。3月になると2ヶ月目というふうに・・・ ご存知の方は宜しくお願いします。

  • 勤続年月数の計算式教えて下さい

    勤続年月数の計算式教えて下さい A1に入社年月日を入力しています。 B1に本日までの勤続年数を出したい。次にC1に月数を出したい。年と月を別々のセルに 出したいので宜しくお願いします。

  • エクセルで二つの年月の差を求めたいのですが、、、

    よろしくお願いします。 エクセルの表に、  A   B   C   D  E (年) (月) (年) (月) 41   6   46   5 というように、二つの年月数が入っています。 この表でいう、46年5ヶ月と41年6ヶ月の差の期間を求めて、 その値をEに入れたいと思っております。 が、ちょっと複雑で、 例えばこれでいうと、4年11ヶ月となりますが、この場合4年を1ヶ月でも超えているので、数値を5年としてEの列に値を入れたいのです。 計算値が3年0ヶ月などになった場合は3年ですが、3年1ヶ月となった場合は4年としたいのです。 何か良い方法はありますでしょうか。 ご指南よろしくお願いいたします。

  • エクセルで月数の計算

    例えば、2007/5/8をA1に2008/1/31をA2に入力してA3でその期間の月数を求めます。この場合暦に従って計算し、1ヶ月未満の端数が生じたときは1ヶ月として計算します。上記の日付の場合8ヶ月と端数が生じるので9となります。A3に設定する関数はどのようになるでしょうか?

  • エクセルで月数の計算2

    例えばA1に開始日、A2に終了日、A3に数式を設定して月数を計算します。月数は暦に従って計算し、ひと月未満の端数はひと月として計算します。この場合、初日を算入(計算の対象に入れる)して計算する場合、下記の数式のどこを修正すべきでしょうか? =IF(DATEDIF(A1,A2,"MD")=0,DATEDIF(A1,A2,"M"),DATEDIF(A1,A2,"M")+1)

  • 勤続年数(月数)の計算および定義について

    エクセルで退職金の計算をしようと思います。 条件: a) 勤続年数は暦日によって計算 b) 1ヵ年に満たない月数は月割で計算し、1ヶ月に満たない日数は切り捨てる c) 退職金=基本給x勤続年数x支給率 d) 3年以上勤続のものに支払われる。 質問1: 1)満年数の勤続年数の計算は下記の関数でただしいでしょうか? 関数:DATEDIF(入社日,退職日,"Y") 例:1989/3/20(入社)2009/10/31(退職) の場合、満年数=20 2)残りの満月数の計算は下記で正しいでしょうか? 満月数=条件bの”1ヶ月以下切り捨て”に相当 関数:DATEDIF(入社日,退職日,"YM") 例:上記の場合、満月数は7 3)上記の例の場合(入社日:1989/3/20 退職日:2009/10/31) 退職金=基本給x(20+7/12) x 支給率  で正しいでしょうか? 4)上記の関数でいくと下記のような場合は、2年と11カ月になります。 例:1989/9/30 2009/10/31  これは定義上、2年11カ月になるのでしょうか?(そうなると退職金が受けられない)。 それとも、関数自体が間違っているのでしょうか? 以上4点について、ご教授をお願いいたします。 お返答、お待ちしております。

  • 月数計算

     請求書の作成をエクセルで行おうとしているのですが、請求対象月を各請求書ごとに記載しなければなりません。現状では月が変わるとある一箇所だけ月数を変えてその月から+1したり-1したりしているのですが、年が変わってしまい12月分の請求書を作らなくてはならないのに-1をすると0月分とでてしまいます。12月のときも+1したら13月とでたところを手作業で修正しました。そのようなことがおきないように下記のようなIF関数を書いたのですが、FALSEとでてしまいうまくいきません。 年をこせる関数を現在の月とそこから+-するための数字だけで何月分と簡単にでてくるような数式ってどうやって書けばいいのか教えてください。 =IF(A9<=0,A9+11,IF(0<=$A$9<=12,A9,IF(13<=CZ9,CZ9-12)))

  • 文字列を数式に変換して計算する方法

    エクセルで計算を行なうときにA1のセルに計算式、B1のセルに答えの数値を表したいときにこれまではA1に例えば1+1を入力してそれをコピーしてB1に貼り付けて その前に=を入力していたのですが、計算式をA1に入力した段階でB1に答えが出る方法がありましたら教えてください。なにぶんにも初心者なのでよろしくお願いします。ソフトはofficeXPです。

  • JAVAで月数計算

    2つの日付を引き算して月数を出したいと思っています。 日付はaとbにとってこれているものとして、 long m = a.getTime() - b.getTime()/30*24*60*60*1000; と考えたのですが、ひと月は31日ある月もあれば、30日ある月もあります。 これで計算に矛盾は起きないでしょうか? 皆様はどうしていますか?