件の和牛データベース、じつは、解決できていない問題が残っていました。
イメージは出来ていたんですが、試していなかったんですね。^^;
あれから、またまた修正を加えまして、AI(人工授精)後の経過日数を計算させるようにしました。
これの計算式はさほど難しいくはありませんが、1列づれた分の修正は大変でした...。^^;
式は
=IF(C3="","",IF(INDEX(一覧表!$A$3:$L$20,MATCH(SMALL(一覧表!$D$3:$D$20,ROW(F1)),一覧表!$D$3:$D$20,0),COLUMN($F1))="(+)","",TODAY()-C3))
さて、残っている問題とは、上図分娩予定順シートのF列に入る式、
一覧表シートの鑑定欄にマークが入っていないときの対処方法です。
取りあえずの応急処置として、鑑定欄にマークが入れられない場合、
空白を一つ入れて0を表示させないようにしてありました。
今日、入力作業が有りまして、その際に、イメージしていたモノを試してみようかと
一覧表シートのF列の(+)の記号の数を数えてROW関数と比較したらIF関数の条件式に使えるのではないかと...。
以下のような式を作ってみました。
=COUNTA(一覧表!$F$3:$F$25)>=ROW(A1)
これをオートフィルして式のコピーをしてみましたら、見事にTRUEとFALSEに分かれてくれて、、、
おー、使える~~。(^^)v
この式の場合、行番号よりもCOUNTAで調べた個数が同じか大きいとなりますので
IF関数で分岐させるときに、FALSEに空白のエラー処理が入ります。
理屈は分かっていますが、あまりに式が長くなりすぎて、、、
一瞬どこに入れたらいいのか迷ってしまって...。(^^ゞ
こんな式になりました。
=IF(COUNTA(一覧表!$F$3:$F$25)>=ROW(A1),IF(ISERR(INDEX(一覧表!$A$3:$L$20,MATCH(SMALL(一覧表!$D$3:$D$20,ROW(F1)),一覧表!$D$3:$D$20,0),COLUMN($F1))),"",INDEX(一覧表!$A$3:$L$20,MATCH(SMALL(一覧表!$D$3:$D$20,ROW(F1)),一覧表!$D$3:$D$20,0),COLUMN($F1))),"")
式をオートフィルでコピーして、考えた通りの結果が返った時は
思わずガッツポーズをしたりして...。(^^ゞ
ちょっと嬉しかったのでブログの記事にしちゃいました。^^
お粗末様でした。^^;
※コメント投稿者のブログIDはブログ作成者のみに通知されます