• ベストアンサー

複数の特定列で、条件を同時に満たす行を抽出して表を再表示する方法は?

約10列で200行のエクセルで作った表があります。 ある列には文字、ある列には数字が入っています。 そのうちの特定の二つの列において、ある行の数字が共に”0.0”という特異行を隠し、それ以外の行を表示させたままで表全体を印刷したいのですが、そのような方法をお教え頂けませんか。 表が大きい為に意味のない行は省いた方が見やすくなりますので。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tresbien
  • ベストアンサー率51% (51/99)
回答No.1

1.まず準備として見出し行(フィールド名)をどこかに、普通は200行の少し下ですか、に準備します。(そのままコピーしたほうが間違いありません) 2.あなたが考えている特定の列の下に「<>0」を入力します。 この時、2つの条件を同じ行に入力するのではなくて1つはずらして入力します。 3.リストの中のセルをアクティブにしてから、メニュー-データ-フィルタ-フィルタオプションの設定 を選びます 4.リスト範囲を確認して、検索条件範囲を 1.2.で入力した3行とします。 5.抽出した結果を別の場所にしたい場合は、「指定した範囲」にチェックして、注出範囲に下のほうのセルを指定しておきます。 これで問題の2つの列が同時に0を満たすもの以外の行を抽出する事が出来ます。

noname#96725
質問者

お礼

ご回答有難うございます。再現出来ました。トレビア~ンです。 教えて頂いた内容はそのままコピペして保存します。<>0という記述は知りませんでした。 3行の書き込みを予めしておけば後の手順はとても簡単で抽出条件も楽に付け加え出来そうですね。良い方法を教えて頂きました。

すると、全ての回答が全文表示されます。

その他の回答 (7)

  • macchan1
  • ベストアンサー率38% (52/136)
回答No.8

関数だけで別シートに表示することもできますが、この場合は補助列を使って両方の列に0.0が入っている行にマークをつけ、このマークでオートフィルタするのが簡単です。 例えばB列とD列に文字列の0.0が入っているなら、補助列(例えばK2セル)に以下の式を入力し、下方向にオートフィル(コピー)し、この列をオートフィルタで「1」以外のセルを選択すればOKです。 数値の場合は「"0.0"」は「0」にします。 =IF(AND(B2="0.0",D2="0.0"),1"")

noname#96725
質問者

お礼

macchan1さん、ご回答ありがとうございます。 IF関数とAND関数の組合わせで複数条件が満たされた時にTRUEを返すやり方ですね。AND関数はこれまで使った事がなかったので勉強になりました。 ちょっとアレンジして=IF(AND(C2=0,D2=0),1,2)で解決しました。「表示なし」のセルが続くと何となく不安でしたから。その列にオートフィルタをかけるのですね。アイデア有難うございました。

すると、全ての回答が全文表示されます。
  • sou_tarou
  • ベストアンサー率51% (196/381)
回答No.7

#6です。 申し訳ない、勘違いしていました。 スマートな方法ではありませんが、こういうのはどうでしょう? オートフィル+表示しない設定 オートフィルで特定列を0.0に もう一列も同じく これで特定列2列が0.0のデータが表示される。 そこで、表示された行を行選択、表示しないを選択

noname#96725
質問者

お礼

>申し訳ない どう致しまして、私もときどきやってしまいます。 >表示された行を行選択、表示しないを選択 逆を取りましたね。なるほどっ。逆表示された行に印をつけてそれにオートフィルタをつけて非表示としました。 見事に出来ました。有難うございました。

noname#96725
質問者

補足

皆さんから解決方法をアドバイス頂き、本当に有難うございました。山に登る道は一筋ではない事を改めて教えて頂きました。新築住宅の原価・売価・利益率をリアルタイムに算出する、9シートから成るソフトもどきを作ったのは良いのですが、一部の表が大き過ぎて持て余していた所でした。 評価を差し上げなければなりませんが、困ってしまいます。今回目的に一番合致したトレビアンさんは動きませんが、そうたろうさん、まっちゃん1さんも200行余のドラッグというという困難を除けば良回答と思います。窮地を抜け出たそうたろうさんに次点を差し上げます。Nの心さんも検索・置換に道を開いて頂きました。 今回は本当に楽しく勉強させて頂き感謝しています。

すると、全ての回答が全文表示されます。
  • sou_tarou
  • ベストアンサー率51% (196/381)
回答No.6

オートフィルタのオプションを2列に設定ではいかがですか? まず、一列目でオートフィルタにオプションを選びます。 0.0と等しくない に設定 もう一列でも同じ事をする。 すると、二列ともに0.0に等しくないデータのみが表示されるはずです。

noname#96725
質問者

お礼

ご回答有難うございます。 実は質問する前にこのやり方を試してみたのです。 特定列2つを選びオートフィルタのオプションでそれぞれを設定しますと、同じ行のセルが二つとも0.0である行だけをオミットするのでなく、片方が0.0である行までオミットするので今回の目的に合わなかったのです。 つまり"and"の結果が欲しいのに"or"で検索されてしまったのですね。 ご協力有難うございました。

すると、全ての回答が全文表示されます。
回答No.5

No.2です。 補足 検索タブの書式ボタンを押し、下にある書式を選択するのボタンを押しペンのついた十字のマウスを"0.0"のあるセルでクリック。 "0.0"のあるセルが同じ書式なら検索されると思いますが。

noname#96725
質問者

お礼

昨晩は有難うございました。 簡単な表を別に作ってトライしました。検索では0.0セルを全て網羅してくれましたが、A列B列同時に0.0である行を取り出してくれないので、それを非表示にするには一つ一つを手でつぶして行く方法のようですね。200行もある場合ですとちょっと厄介かな、と感じました。これは置換にぴったりの方法ですね。 お礼申し上げます。

すると、全ての回答が全文表示されます。
回答No.4

No.2です シートの保護がされていませんか? 先に進めない理由だと思います。 もしも違うならまた考えます。 オートフィルタは楽でいいのだけど希望しない行も消されるので私はアナログ的な検索を使うことがあるので回答しました。

noname#96725
質問者

お礼

補足ご説明を何度も頂き有難うございます。もう12時を過ぎましたので明日トライしてみます。 表は数字がどんどん変わり、行も増えたり減ったりしていますから保護はしていません。そんな表ですから手続きの楽な方法が適当ではないかと思っています。 PCのアプローチは一つだけでなく色々なやり方があってそれぞれに長所がありますからどれも参考になります。 よろしくお願いします。

すると、全ての回答が全文表示されます。
  • macchan1
  • ベストアンサー率38% (52/136)
回答No.3

ご希望の操作は、オートフィルタだけの機能でできるように思います。 リスト上にカーソルを置き「データ」「フィルタ」「「オートフィルタ」で該当列の▼をクリックし「オプション」を選択し「0.0」と「等しくない」という設定を列ごとに指定すれば「0.0」以外のデータが抽出されて表示されます。

noname#96725
質問者

お礼

ご回答有難うございます。 オートフィルタですぐに壁に突き当たってしまって教えてgooに駆け込みました。複数行を同時にふるいに掛けられるのですね。只ちょっと疑問なのですが、この処理方法ですと複数特定列において”ともに”0.0である行が得られるのではなく、”少なくともどちらか一方が”0.0であるものがすべてオミットされてしまう結果になってしまいましたが?

すると、全ての回答が全文表示されます。
回答No.2

"0.0"の数値が入った行をすべて隠して印刷なら、非表示したい行を選び、右クリックしメニューから「非表示」にして印刷できます。 まず、表を選択して 編集→検索→検索する文字列に「0.0」と入れる。 オプションボタンを押し[セル内容が完全に同一であるものを検索する]にチェック。 すべて検索のボタンを押し表示された結果をクリック。 表の中の該当セルが選ばれるので行番号を右クリックして非表示を選択。 行が非表示されます。 検索の他の結果をクリックして繰り返し。 後は印刷して下さい。 再表示は行番号をすべて選択して右クリック。再表示を選べば元に戻ります。

noname#96725
質問者

お礼

ご回答有難うございます。 ご指示に従って作業を進め、セル内容が完全に同一であるものを~をクリックすると、検索条件に一致するデータは見つかりません、と表示が出て進めなくなります。何度繰り返しても同じですが何か手順を間違えたのでしょうか。 0.0が重なっている特異行は80行近くあります。

すると、全ての回答が全文表示されます。

関連するQ&A