- ベストアンサー
Excel関数で「締」の行の値を引き算する方法
- Excel2003で、「締」という文字が入っている行の値を引き算する方法について教えてください。
- 特定の条件を満たす行の値を引き算するExcel関数の使い方について教えてください。
- Excelの関数を使って、「締」という文字が入っている行の値と別の行の値を引き算する方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
L2=IF(AND(K2="締",COUNTIF(K:K,"締")=COUNTIF(K$1:K2,"締")),J2-INDEX(J:J,MATCH("締",K:K,0)+1,0),"") で下方にコピー
その他の回答 (2)
- KURUMITO
- ベストアンサー率42% (1835/4283)
作業列を作って対応するのが判りやすいでしょう。 M2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(K2="","",COUNTIF(K$2:K2,"締")) お求めのデータを表示させるためにはL2セルに次の式を入力して下方にオートフィルドラッグします。 =IF(OR(K2="",M2=1),"",J2-INDEX(J:J,MATCH(M2-1,M:M,0))) なお、M列は目障りでしたら非表示にしても良いですし、フォントの色を白にしても良いでしょう。
お礼
ありがとうございます。 大変参考になりました。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 解釈が違っていたらごめんなさい。 結局「締」が入力されている最終行のJ列の数値から 「締」が入力されている最初の行のJ列の値を引いて 「締」が入力されている最後のL列の行にその値を表示させれば良いというわけですかね? 一応そういうことだとして・・・ ↓の画像でL2セルに =IF(OR(K2="",COUNTIF($K$2:K2,"締")<>COUNTIF($K$2:$K$1000,"締")),"",INDEX($J$2:$J$1000,LARGE(IF($K$2:$K$1000="締",ROW($A$1:$A$999)),1))-INDEX($J$2:$J$1000,SMALL(IF($K$2:$K$1000="締",ROW($A$1:$A$999)),1))) という数式を入れています。 これは配列数式になってしまいますので、この画面からコピー&ペーストしただけではエラーになると思います。 L2セルに貼り付け後、F2キーを押すか、数式バー内で一度クリックしてください。 編集可能になりますので、Shift+Ctrl+Enterキーで確定します。 数式の前後に{ }マークが入り配列数式になります。 そして、L2セルのフィルハンドルで下へコピーすると画像のような感じになります。 尚、数式は1000行目まで対応できるようにしていますが、 データ量によって範囲指定の領域はアレンジしてください。 もし、「締」の文字がK列にいくらあっても最後の「締」の行から 最初の「締」の行の値を引くようにしていますが、 もし2個しか入力がないのであれば数式はもう少し簡単になるかと思います。 以上、長々と書きましたが参考になれば幸いです。 的外れなら読み流してくださいね。m(__)m
お礼
ありがとうございます。 大変参考になりました。 概ねこれでいけるはずです。
お礼
ありがとうございます。 概ねこれでいけそうです。 一番シンプルですね。