• ベストアンサー

エクセル関数

職員名簿を作成しています。そこで、勤続年数がA1のセルに表示されます。それをB1のセルに19年0ヵ月以下の年数が表示されたら空欄にし、19年1ヵ月以上の年数が表示されたら、その年数を表示する関数を教えてください。

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

  • ベストアンサー
  • don9don9
  • ベストアンサー率47% (299/624)
回答No.2

A1セルには「○年□ヶ月」という文字列が入っている ○や□には0が来ることもある(「0年10ヶ月」「12年0ヶ月」などのデータもある) と仮定します。 =IF(LEFT(A1,FIND("年",A1)-1)*12+SUBSTITUTE(SUBSTITUTE(RIGHT(A1,4),"年",""),"ヶ月","")*1>228,A1,"") ・A1セルの文字列から"年"という文字を探して、それより前の部分を抜き出す → 年数 ・A1セルの文字列から最後の4文字を抜き出して、"年"と"ヶ月"の文字列を取り除く → 月数 (最後4文字は、0~9ヶ月の場合は"年□ヶ月"、10、11ヶ月の場合は"□□ヶ月"となるはずなので) この年数に12をかけたのと月数を足して228(19年×12ヶ月)より大きければA1セルの値、そうでなければ空白 このような感じでしょうか。

HARA007
質問者

お礼

大変ありがとうございました。 質問内容がすべてクリアされました。

その他の回答 (1)

  • DJ-Potato
  • ベストアンサー率36% (692/1917)
回答No.1

IF関数で良いのではないですか?

HARA007
質問者

お礼

ありがとうございます。

HARA007
質問者

補足

ありがとうございます。できれば関数式等を教えてください。

関連するQ&A