[[20100518224231]] 『エクセル日付を基に抽出』(あず) ページの最後に飛ぶ

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

 

『エクセル日付を基に抽出』(あず)
excel2003/WinXP

簡単に説明しますと、A1に日付が入っている表があります。
それに基づく関数と条件付き書式を使用したいので
お力を貸して下さい。(初心者の質問ですみません<m(__)m>)

@A1に日付が入っていたらA2に●を入力し、A1〜A2の行を黄色で塗りつぶす。

A更にその日付が直近1週間のものであれば、A2に◎を入力し、A1〜A3の行を黄色で塗りつぶす。※この場合、2010/05/18より直近1週間以内のもの

 A1          A2                                                                               
 2010/05/1      ●                 
 2010/05/8         ●                           
 2010/05/5          ●                             

 2010/05/15     ◎
 2010/05/1         ●
 2010/05/17        ◎

お手数ですがよろしくお願い致します。


 > A1〜A2の行を黄色で塗りつぶす・・・・あえてA2に"●"を入れる必要はない思いますが。
 >にその日付が直近1週間のものであれば  ・・・色を「赤」とすればいいのでは。

マークをつけることによって、●のものだけとk抽出しやすいかなーと思ってマークをつけようと
思ったのですが・・・

 >、●のものだけと抽出しやすいかな
 A1に日付が入るか、(グランク)のどちらか、なら 抽出の式で、=IF(A<>""、・・・等で条件を設定できます。また「日付が5月のもの」という条件設定で抽出できます。
 また直近1週間も (基準日)-(日付)<=7という条件で求められます。

ありがとうございます
何ぶん、初心者なもので数式がよくわかりません(>_<)
申し訳ございませんが、具体的に上の表だとどういった数式で求められるのか
教えていただけないでしょうか?
お手数おかけします。。

 「抽出」が何を抽出するか、「日付」を抽出するのか、日付の入った行のある列のデータを抽出するのか。分からないことが多いですが。
  A          C               D
 1 2010/05/1     2010/05/1    2010/05/15                        
 2 2010/05/8        2010/05/8       2010/05/17                           
 3 2010/05/5      2010/05/5              
 4          2010/05/15
 5 2010/05/15     2010/05/1  
 6 2010/05/1        2010/05/17         
 7 2010/05/17        

 C列に抽出  (ほとんどそのまま,ブランクを上に詰めています)
 C1:=IF(COUNT($A$1:$A$7)<ROW(A1),"",INDEX($A$1:$A$7,SMALL(IF($A$1:$A$7<>"",ROW($A$1:$A$7),""),ROW(C1))))
 配列数式ですので  Shift+Ctrl+Enetrの3つを同時に押して 確定。C7まで下へコピー

 D列に抽出(直近1週間,"2010/5/13"以降)
 D1:=IF(COUNTIF($A$1:$A$7,">=2010/5/13")<ROW(A1),"",INDEX($A$1:$A$7,SMALL(IF($A$1:$A$7>="2010/5/13"*1,ROW($A$1:$A$7),""),ROW(C1))))
 配列数式ですので  Shift+Ctrl+Enetrの3つを同時に押して 確定。D7まで下へコピー

 


 >だとどういった数式で求められるのか
 につられて長々した式を書いてしまいましたが。

 日付が入っているのをマークするのに"●"などでは、"行"の情報が入っていません。
 B1:=IF(A1<>"",ROW(A1),"") とすれば 日付の入っている行の行番号を拾い出すことが出来ます。
 またこの列はふつう「作業列」として表には出しません。
 直近1週間を区別して抽出等をするのなら、列を別にし、例えば
 C1:=IF(A1>="2010/5/13"*1,ROW(A1),"")としたほうが、やりやすいです。
 B列は直近1週間を除いて、
 B1:=IF(AND(A1<>"",A1<"2010/5/13"*1),ROW(A1),"")とします。

 「抽出」はA列(日付)を基準にオートフィルタによるほうが、簡単です。B列、C列(作業列)なしで、いろいろな条件で抽出できます。(2010/5/13以上等も)


コメント返信:

[ 一覧(最新更新順) ]


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