dポイントプレゼントキャンペーン実施中!

エクセル初心者です。

日付の勉強をしているのですが
今、下の画像のようなデータを作成しました。

一番左の列が、別のデータベースから転記した日付を
シリアル値に変換したものです。

それを真ん中の列にコピーして、日付に変換しました。

そのデータの中から、YEAR関数とMONTH関数を使って
年と月のみの日付にしたものが、3列目です。

ここで、疑問なのですが、3列目を昇順に並び替えたときに
きちんと昇順に並び替えができませんでした。

9月、10月、11月ときれいに順番に並べるには何か
複雑なセル設定が必要なのでしょうか。

教えてください。

※添付画像が削除されました。

A 回答 (4件)

YEAR関数とMONTH関数で求めた文字列が昇順に並ばないのは、


月の文字列が1~9月は1桁なのでこれを01~09にする必要があります
例えば
C2=TEXT(A2,"yyyymm")
とすると月が2桁の文字列になります。
    • good
    • 0

3列目はtext関数の合成ですか?



表示の状態では、2月よりも10月以降のほうが先になってしまいす

なぜそうなるかを しっかり考えてください















全ての月を2桁で表さないからです  1~9月を01~09月とすればよいだけです
text関数ならば 表示フォーマットを00にします

コンピュータ処理の ごくごく基本のことです
    • good
    • 0

今のやり方では,綺麗に「9月10月11月」と並べ替えることは出来ても,「正しく」並べ替える事は出来ません。


今のデータに,例えば2011年1月などのデータを交えて結果を確認するようにしてください。



方法1:綺麗だけど正しくない
今の数式は結果が文字列になっているので,そのような並べ替え結果になります。
数式を
=VALUE(YEAR(A1)&MONTH(A1))
のようにして,「数値」に変えて計算させた結果を並べ替えると綺麗に並びます。



方法2:正しいけど綺麗?
数式を
=TEXT(A2,"yyyymm")
とします。この結果は「文字列」のままであることに注意してください。
=TEXT(A2,"yyyymm")*1
とかで数値に変えてもOKです。
    • good
    • 0

>そのデータの中から、YEAR関数とMONTH関数を使って


>年と月のみの日付にしたものが、3列目です。


=text(A2,"yyyymm")
してみては如何でしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!