• ベストアンサー

エクセルでデータを入力すると別のセルに答えが返ってくるには

A1に"2004/10/1"と入力すると、B1に"4"と表示されるようにするにはどうすればいいのでしょうか? 具体的な使い方はA1には日付を****/**/**という形で入力しB1にはその日付の「年」の部分の数字を下二桁で返して欲しいのです。 A1に"2004/10/1"ならB1に"4"、A1に"2003/10/1"ならB1に"3"、A1に"2005/10/1"ならB1に"5"という具合です。 IF関数を使って試みましたが私の力ではうまくいきませんでした。 オートSUMの使い方または関数をご教示ください。 よろしくお願いいたします。

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

  • ベストアンサー
  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.7

おじゃまします。 空白の件を含めますと、 =IF(TRIM(A1)="","",MOD(YEAR(A1),100)) これでいかがでしょうか。 頑張ってくださいヽ(^。^)ノ

snowflakes
質問者

お礼

snoopy64 さま 迅速、ご丁寧な回答本当にありがとうございました。 04、空白の件は私の説明不足でしたがIF、TRIMを使った アドバイスはとても勉強になりました。 当初の問題を無事クリアすることが出来ました。 本当にお世話になりました。

その他の回答 (8)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.9

こんにちは。maruru01です。 「4」ではなくて「04」と表示させるのなら、 =TEXT(A1,"y;;;") 空白や日付と認識出来ない文字列の場合は、空白になります。

snowflakes
質問者

お礼

maruru01 さま 迅速な回答本当にありがとうございました。 いろいろと悪戦苦闘していた関数がこんなに簡潔な数式で 表せるとは思いませんでした。 皆さまのアドバイスで関数を勉強し=TEXT(A1,"y;;;")が 理解できたとき、目からうろこが落ちる思いがしました。 本当にお世話になりました。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.8

#6のmshr1962です。 #7の方が回答されてますが IF文で空白の判定すればできます。 =IF(A1="","",数式) =IF(ISBLANK(A1),"",数式) スペースのみ入力も判定なら =IF(ISNUMBER(A1),数式,"")

snowflakes
質問者

お礼

mshr1962 さま #6と2回のご丁寧な回答本当にありがとうございました。 まだうまくのみこめていなかったIF関数が的確なアドバイスでよく理解できました。 初心者レベルにIF関数は難しいですね。 これからもっと勉強していこうと思います。 本当にお世話になりました。 また何かありましたらその時もどうぞよろしくの願い致します。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.6

西暦下1桁なら =MOD(YEAR(A1),10) でしょうね。#5の方のは2000になっているので 1999までは4桁、2000年以降は3桁まで表示されてしまいます。 西暦下2桁なら =A1 で表示形式を y とするか =MOD(YEAR(A1),100) =TEXT(A1,"y") 【これだけは文字化されます。】

snowflakes
質問者

お礼

mshr1962 さま 迅速、ご丁寧な回答本当にありがとうございました。 #5のS-Fuji さまとmshr1962 さまのアドバイスは エクセル初心者レベルの私にとってわかり易く とても勉強になりました。 また3つもの解があるとは思ってもみませんでした。 お世話になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

  • S-Fuji
  • ベストアンサー率36% (592/1624)
回答No.5

A1のセルが日付表示、B1のセルが数値表示で、 B1に=YEAR(A1)-2000 で如何でしょう。 もしくは =(MOD(YEAR(A1),2000) でも

snowflakes
質問者

お礼

S-Fuji さま 迅速、ご丁寧な回答本当にありがとうございました。 関数YEAR、MODの使い方ははじめて知りました。 また、2つの解があるとは思ってもみませんでした。 まだまだ勉強不足です。 とても勉強になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

  • TT_TT
  • ベストアンサー率17% (16/90)
回答No.4

A1のセルの書式が文字列形式でよいならば B1に「=MID(A1,3,2)」と入れるだけで出来ますよ

snowflakes
質問者

お礼

TT_TT さま 迅速な回答本当にありがとうございました。 恥ずかしながらはじめて関数MIDの使い方を知りました。 まだまだ勉強不足です。 今回はとても勉強になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

  • neminemi
  • ベストアンサー率50% (213/418)
回答No.3

下二桁が表示されるだけでいいのであれば、B1に=A1と入れて、セルの書式設定でyyと設定すれば、2004年なら04、2005年なら05と表示されます。 もし04は4と表示させなければいけないとか、返って来た数字を数値として計算に利用するということだとちょっとわかりません。ごめんなさい。

snowflakes
質問者

お礼

neminemi さま 迅速でご丁寧な回答、本当にありがとうございました。 04のところは私の説明不足でしたがうまくクリアすることが出来ました。 とても勉強になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

回答No.2

数値として4とだすなら =VALUE(RIGHT(YEAR(A1),2)) 文字列として下2桁を表示するなら =RIGHT(YEAR(A1),2)

snowflakes
質問者

お礼

shishishishi さま 迅速な回答本当にありがとうございました。 恥ずかしながら関数VALUE、RIGHT、YEARの使い方をはじめて知りました。 とても勉強になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

  • jindon
  • ベストアンサー率43% (50/116)
回答No.1

該当セルに =A1 として セルの書式設定を ユーザー定義 -> yy とすればOKですね。

snowflakes
質問者

お礼

jindon さま わずか約10分という迅速な回答本当にありがとうございました。 セルの書式設定のユーザー定義で任意の桁まで変えられるというのははじめて知りました。 とても勉強になりました。

snowflakes
質問者

補足

迅速なご返答本当にありがとうございます。 大変申し訳ありません。私の説明不足な点がありました。 補足いたします。 実はA1のセルには「空白」ということもあるのです。 このA1が「空白」の場合、B1も「空白」または「BLANK」 と表示させるにはどうすれば良いのでしょうか? どうぞよろしくお願いいたします。

関連するQ&A

専門家に質問してみよう