- ベストアンサー
エクセルで表の一部、ゼロのみではない行を抜き出す
お世話になります エクセルで次の様な表があるとします。 個数 項目(1) 項目(2) 項目(3) 商品A 10 10 20 商品B 5 10 15 商品C 4 5 6 個数の列は初期状態では空で必要に応じて入力するものとします。 この表の右には集計のための数式の入ったセルがあるとします。 合計計算 個数 項目(1) 項目(2) 項目(3) 項目(1)合計 項目(2)合計 項目(3)合計 商品A 10 10 20 Aの個数×Aの項目(1)の数値 Aの個数個数×Aの項目(2)の数値 ・・・(略) 商品B 5 10 15 Bの個数×Bの項目(1)の数値 Bの個数個数×Bの項目(2)の数値 ・・・(略) 商品C 4 5 6 Cの個数×Cの項目(1)の数値 Cの個数個数×Cの項目(2)の数値 ・・・(略) ここで個数には0が入ることもあります。 そのときは計算された右側のセルにも当然0が入ります。 つまりこんな感じです。 合計計算 個数 項目(1) 項目(2) 項目(3) 項目(1)合計 項目(2)合計 項目(3)合計 商品A 1 10 10 20 10 10 20 商品B 0 5 10 15 0 0 0 商品C 3 4 5 6 12 15 18 さてここでやりたいことがあります。 それは個数が0以外のものの結果のみを抽出するということです。 今回の場合は 項目(1)合計 項目(2)合計 項目(3)合計 10 10 20 12 15 18 というところだけを抜き出したいのです。 実際は行がもっと沢山あります。 オートフィルタを使って個数が0以外で抽出する、も考えましたが 最初のタイトル行が訳あって複数行に渡っているため使えません。 何か良い手だてはありますでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
次の方法は如何でしょうか。 (1)別シートのA1に個数、A2に>0を設定 (2)データ→フィルタ→フィルタオプションの設定→警告メッセージはOKとする (3)指定した範囲にチェックを付ける→リスト範囲欄に元表の個数列から項目(3)合計列範囲→検索条件範囲欄に(1)の範囲→抽出範囲欄に任意セルを設定→ok 但し、抽出結果として個数列~項目(3)列まで表示されますので処理後に削除して下さい。
その他の回答 (2)
- k-tnh45m
- ベストアンサー率0% (0/1)
別シートに 項目(1)合計 項目(2)合計 ・・・ =if(f2=0,"",f2) =if(g2=0,"",g2) ・・・ ・ ・ ・ ・ ではどうでしょうか?
お礼
ありがとうございます。 ただ、この方法だと 項目(1)合計 項目(2)合計 項目(3)合計 10 10 20 12 15 18 となり、空白の行が残ってしまうのではないでしょうか? 空白の行は詰めて表示したいのです。
- Cupper
- ベストアンサー率32% (2123/6444)
タイトルの一番下の行とデータの行を選択してオートフィルタを掛けてみましょう データの行は1行でもOK たぶん…たぶん幸せになれると思います
お礼
ありがとうございます。 こんな簡単な方法で解決するとは・・・ ところでオートフィルタを使ったら新たな問題が。 機能ではなく表示の問題なのですが 文字数の都合で列の幅を狭くしています。 ここでオートフィルタを使うとタイトル行の中身が見えません。 オートフィルタの記号を小さくするとか、非表示にするとかは可能でしょうか?
お礼
これは初めて見る形です。 実際にやってみるとできました。 こんなフィルタリングの方法があるのですね。 大変勉強になりました。 ※もしかするともっと予想外の良い案などが出てくるかもしれないので もうしばらく受付中にしておきたいと思います。