[[20181011142526]] 『特定の条件にあてはまらないデータを別シートに抽』(カズ) ページの最後に飛ぶ

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

 

『特定の条件にあてはまらないデータを別シートに抽出』(カズ)

実現したいこと

"Todo"シートにある”完了”もしくは空欄になっていないタスクを別の"未完リスト"シートへ転記し、日付の若い順に(昔から順番に)並べたい。

VBAは用いず、関数だけで作業を完了させたい。

《Todo》

    A    B       C       D  
 1  No.   タスク   納期  進捗率
 2 A    生活調査票 10/1  完了
 3 B    PC購入   10/6  80%
 4 C    eラーニング 10/4    40%
 5 D     書類廃棄  10/11  0% 
 6 E     備品手配  10/13  完了
 7  F
 8  G

  ↓↓このように関数で自動的に表示したいです

《未完リスト》

   A      B   
 1 タスク     納期 
 2 eラーニング  10/4
 3 PC購入    10/6 
 4 書類廃棄   10/11
 5
 6
 7
 8

よろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 納期が同じものはあるのだろうか?
 もしあった場合、その順番はどうするのだろうか?
(ねむねむ) 2018/10/11(木) 14:47

ねむねむさん

説明不足ですみません。

納期が同じ場合もあります。その場合は行番号が若い方を上に表示します。
(カズ) 2018/10/11(木) 17:28


 未完リストのA2セルに
 =IFERROR(INDEX(Todo!B:B,MOD(SMALL(IF((Todo!$D$2:$D$999="完了")+(Todo!$D$2:$D$999=""),"",Todo!$C$2:$C$999+(ROW($2:$999)/1000)),ROW(A1)),1)*1000),"")
 と入力してShiftキーとCtrlキーを押しながらEnterキーで式を確定(確定後、式が{}で囲まれればOK)、その後
 右及び下へフィルコピーではどうか?
(ねむねむ) 2018/10/12(金) 09:29

 なお上記式はTodoシートのデータが最大999行目まで対応している。
 もっとある場合は式中の$999をすべて同じ値で大きくしてくれ。
 また、1000〜9999までの場合は式中の1000を10000に、10000〜99999の場合は1000を100000にしてくれ。
(ねむねむ) 2018/10/12(金) 09:33

ねむねむさん

ご回答ありがとうございます!

実際に使用しているシートは項目の位置や表現が違っていたりして微調整に苦労しましたが、思い通り動作しております。

これからは気持ちよく仕事できます。

本当にありがとございました!
(カズ) 2018/10/12(金) 12:23


コメント返信:

[ 一覧(最新更新順) ]


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