[[20080821144916]] 『年月と年月日が混在する日付の集計』(みいる) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『年月と年月日が混在する日付の集計』(みいる)

 仕事で、納品予定日を管理することになったのですが、
 年月日が確定しているものと、年月まで確定のものとが混在しています。
 こんな場合、
 △月△日〜×月×日までに該当するもの、といった抜き出しや、
 日付順に並べ替えをするのに、良い方法はないでしょうか?

 試しに「2008年10月」を「2008/10/0」などと入力してやってみたのですが、
 文字列とみなされるようで(?) オートフィルタで『「2008/11/1」より小さい』と
 いった抽出ができないようです・・・。
 データは下記のような項目で、受注順に入力していっているので、納品日は
 順番に並んでいません。

 2008年11月20日
 2008年9月
 2008年12月2日
 2008年10月
 2008年11月15日
 2008年9月14日
 2008年12月


 >△月△日〜×月×日までに該当するもの、といった抜き出しや、

 「年月しか決まっていないデータ」は、その月の何日のデータとして扱うお積りですか?

 (半平太)

 やはり、「何日」と決めないと処理は難しいでしょうか?
 仮に「1日」と決めるとすると、本当に確定している「1日」と区別がつかないので、
 どうしたものかと思いまして・・・


 すみません説明不足でした。どう使いたいのかといいますと、
 「何日」が不明なものを含めて、数ヶ月間の抜き出しをしたいのです。

 上のデータ例でいうと、9月20日から11月16日まで抜き出したい場合に、
 年月日まで入っているもの、プラス、「2008年9月」と「2008年10月」も見られる
 ようにしたいのですが。 (みいる)


 上記の表に、2008年11月 ってのがあった場合はどうしますか。

 (川野鮎太郎)

 その場合は「2008年11月」も含めて見たいです。(みいる)


 確認ですが、上記のような表で2008年8月1日がA3セルにあり、2008年8月がA5セルにあるとします。
 どこかのセルに =A3=A5と入力したら何が返ってきますか。

 (川野鮎太郎)

 ‘FALSE’となりました。 
 ※今は暫定的に、「2008年8月」を「2008/8/?」と入れている状態なんです。
  ややこしくて申し訳ございません!

 2008/8 とだけ入力すると、2008/8/1 と自動的に表示されてしまい、
  この状態ですと TRUEが返ってきます・・・

 入力の仕方自体にも、実は迷っているところです。


 入力は2008/8だけでやった場合です。作業列を使った場合です。
 D1に初めの月日、E1に終わりの月日を入力
	 [A]   	 [B]	 [C]   	 [D]	 [E]	 [F]      	 [G]
 [ 1]	納入予定日				9月20日	11月16日	
 [ 2]	2008年11月20日		2008年11月20日				
 [ 3]	2008年9月1日		2008年9月1日				
 [ 4]	2008年12月2日		2008年12月2日				
 [ 5]	2008年10月1日		2008年10月1日   				該当
 [ 6]	2008年11月		2008年11月1日	2008年11月30日			該当
 [ 7]	2008年10月		2008年10月1日	2008年10月31日			該当
 [ 8]	2008年9月14日		2008年9月14日				
 [ 9]	2008年12月1日		2008年12月1日				
 [10]	2008年9月 		2008年9月1日	2008年9月30日			該当

 C2セル=A2として下方にコピー							
 D2セル=IF(CELL("format",A2)="D1","",DATE(YEAR(A2),MONTH(A2)+1,0)) として下方にコピー							

 G2セル=IF((($C$2:$C$10>=$E$1)*($C$2:$C$10<=$F$1)+($D$2:$D$10<=$F$1))<>0,"該当","")							

 あとは、G列でオートフィルタを掛ければ該当箇所が抽出できます。							
 (川野鮎太郎)


 ありがとうございます。
 やってみたのですが、ものすごく根本的なところでつまずいてしまいました・・・。
 お尋ねさせてください。

 この場合、[A]列は、「表示形式」によって都度操作しないといけないのでしょうか?
 というのが、A6セルの「2008年11月」と表示させたいのに、2008/11 と入力すると、
 「2008年11月1日」と勝手に「1日」が表示されてしまうのですが・・・。 

 たびたびすみません。
 D列の数式の「format」で、表示形式を読み取っていることになるのでしょうか?(みいる)


 A列は一度全て標準にしてから入力すれば良いですよ。
 日付の入力は時には思いがけない形式になったりするので
 入力は 2008/8/?が良いかもしれませんね。
 その場合、C2=IF(RIGHT(A2,1)="?",DATE(LEFT(A2,4),MID(A2,6,FIND("/",A2,6)-6),1),A2)
 D2=IF(COUNT(A2),"",DATE(LEFT(A2,4),MID(A2,6,FIND("/",A2,6)-6)+1,0))
 としてみてください。

 >D列の数式の「format」で、表示形式を読み取っていることになるのでしょうか
 そうです。

 (川野鮎太郎)

 できました!ありがとうございました!!
 表示形式が「?」になっているほうが、見た目がわかりやすいので助かります。

 いろんな関数があるんですね〜。日付でチェックしないといけないときなどに
 活用できそうですね。 (みいる)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.