重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

エクセルで下記のような名簿を作っています
列D,E,Fはその期間に来客された方にだけ●をつけていっています
教えていただきたいのは、列D,E,Fの期間に来客されなかった方
(●のない方)だけを抽出する方法です
できれば並べ替え機能でできないかなと思うのですが無理でしょうか
よろしくお願いします

「エクセル2007について質問です」の質問画像

A 回答 (4件)

例えば、G2のセルに以下の様に数式を入れ、必要行下へコピーします。


来店回数が表示されます。

=COUNTIF(D2:F2,"●")

A:Gを範囲選択し、データ→並べ替え→最優先されるキーで列Gを選び、昇順になっていることを確認しOKします。

来店していない(G列が0)の分が上に表示されます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます
そうですこういうことがしたかったんです
的確で大変わかりやすかったです
助かりました~

お礼日時:2013/05/02 22:04

>教えていただきたいのは、列D,E,Fの期間に来客されなかった方(●のない方)だけを抽出する方法です



質問の意味が、列D,E,Fのすべての列が空白の人の名前を抽出したいということなら、以下のような関数を入力し下方向にオートフィルコピーしてください。

=INDEX(A:A,SMALL(INDEX(($D$2:$D$100&$E$2:$E$100&$F$2:$F$100<>"")*1000+ROW($2:$100),),ROW(1:1)))&""
    • good
    • 0
この回答へのお礼

回答ありがとうございます
もう少し簡単な方法でできないものかと模索しております
丁寧な回答をありがとうございました

お礼日時:2013/05/02 22:09

こんばんは!


一例です。

↓の画像で上側(Sheet1)元データで、下側のSheet2に表示するとします。
Sheet1の1行目の項目はSheet1の1行目と全く同じ項目にしておきます。

Sheet2のA2セルに
=IF(COUNTIF(Sheet1!D:D,"●"),IF(COUNTA(Sheet1!$A:$A)-COUNTA(Sheet1!D:D)<ROW(A1),"",INDEX(Sheet1!$A$1:$A100,SMALL(IF(Sheet1!D$1:D$100="",ROW($A$1:$A$100)),ROW(A1)))),"")

これは配列数式になってしまいますので、Shift+Ctrlキーを押しながらEnterキーで確定!
数式の前後に{ }マークが入り配列数式になります。

これを列・行方向にオートフィルでコピーすると
画像のような感じになります。

※ 本来であれば元データの1行目期間を別セルて○○~△△ といった具合にすれば
他の方法も考えられます。

とりあえずは参考までに・・・m(_ _)m
「エクセル2007について質問です」の回答画像3
    • good
    • 0
この回答へのお礼

回答ありがとうございます
もう少し簡単にできる方法をさがしております
お忙しいであろう中、丁寧な回答をありがとうございます

お礼日時:2013/05/02 22:08

オートフィルタを利用するのはダメなのかな?



> できれば並べ替え機能で
現在の並びを維持する必要があるなら、現在の列Aに新たな列を挿入して連番を振っておく。
1)全体を選択して、列D,E,Fで並べ替え。
2)該当データにマークつけるなど
3)列A(新たに設けた連番)で並べ替えして元にもどす。
    • good
    • 0
この回答へのお礼

回答ありがとうございます
言葉足らずで申し訳ありませんでした
現在の並びは変わってしまっても問題はありません
ていねいな回答をありがとうございました

お礼日時:2013/05/02 22:06

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