プロが教える店舗&オフィスのセキュリティ対策術

エクセル2003を使用しています。
特定の列の値がtrueの行の特定の列の値のみ抽出したいです。

具体的には、B列に「TRUE」が入っている行のC列の値のみを羅列することができませんでしょうか。
添付した画像のようなエクセルを作成しており、
添付画像の中の2~6行の中から、10行以降のような形に出力させたいです。

お分かりになる方おられましたら、教えてください。

「エクセル2003 特定の列の値がTRUE」の質問画像

A 回答 (5件)

セルA9に・・・


{=INDEX($C:$C,SMALL(INDEX(($B$2:$B$6<>TRUE)*100+ROW($B$2:$B$6),),ROW(B1)))&""}
の式を入れて「Ctrl」+「Shift」キーを押した状態で「Enter」押します(配列数式)

セルA9で完成させた数式を下方向へコピーします

数式の、最初の「{」と最後の「}」は「Ctrl」+「Shift」キーを押した状態で「Enter」を押すと自動的に付きますので手入力は必要ありません

一応画像添付しておきます <(_ _)>
「エクセル2003 特定の列の値がTRUE」の回答画像5
    • good
    • 0

[No.3]の誤謬訂正、



ステップ2の式を次式(何れも配列数式)に訂正します。
{=INDEX(C$1:C$6,SMALL(IF(B$2:B$6,ROW(B$2:B$6),""),ROW(A1)))}
      (↑C$2 を C$1 に訂正)

または     (ROW(B$2:B$6) の直後に -1 を付加↓)  ↓
{INDEX(C$2:C$6,SMALL(IF(B$2:B$6,ROW(B$2:B$6)-1,""),ROW(A1)))}
    • good
    • 0

1.セル A10 に次の[条件付き書式]を設定


   数式が   =ISERROR(A10)
   フォント色 白
2.セル A10 に次の配列数式を入力して、此れを下方に
  (セル A14 まで)ズズーッとドラッグ&ペースト
   {=INDEX(C$2:C$6,SMALL(IF(B$2:B$6,ROW(B$2:B$6),""),ROW(A1)))}
    • good
    • 0

例えばA10セルには次の式を入力して式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押してください。


その後にその式を下方にオートフィルドラッグコピーします。

=IF(ROW(A1)>COUNTIF(B$1:B$6,TRUE),"",INDEX(C$1:$C$6,SMALL(IF(B$1:B$6=TRUE,ROW(A$1:A$6),""),ROW(A1))))
    • good
    • 0

一例です。


配列数式の為、入力完了時にShift+Ctrl+Enterキーを同時押下して、下方向に必要分コピー
=IF(COUNTIF($B$2:$B$6,TRUE)>=ROW(A1),INDEX($C$1:$C$6,SMALL(IF($B$2:$B$6=TRUE,ROW($B$2:$B$6),999),ROW(A1))),"")
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!