プロが教えるわが家の防犯対策術!

EXCEL97です
住所 番地 名前
東京 2丁目 安部
大阪 3丁目 井上
福岡 5丁目 宇田
東京 6丁目 江田
大阪 7丁目 奥田
福岡 9丁目 加賀

といったリストにオートフィルタをかけて
下記のように東京の人だけを表示させています

住所 番地 名前
東京 2丁目 安部
東京 6丁目 江田

この状態で「住所」ラベルの下に出る「東京」という文字を
このリストの上部に表示させることはできますでしょうか?
現在東京の人だけを表示させているということがわかるように
抽出条件を表示したいのです
(福岡、大阪を選択した場合も同様に表示させたいです)

お教えください どうぞよろしくお願いいたします

A 回答 (3件)

小細工が必要ですが、以下の方法ではいかがでしょうか。



(1)以下のセルに項目名を入力
A2=No.、B2=住所、C2=番地、D2=名前
(2)3行目以下データ入力(仮に10行までの入力とする)
 No.は2行目から1,2,3,・・・と採番します(これがみそです)
(3)以下の関数入力
 B1=INDIRECT("B"&SUBTOTAL(5,A3:A10)+2)
(4)A2~D2を選択してオートフィルタをかける
 (A2~D2に▼マーク)
    • good
    • 0
この回答へのお礼

早速試してみましたところ希望通りの結果になりました
no.の連番は行ナンバーとあわせて3,4,5・・・として
B1=INDIRECT("B"&SUBTOTAL(5,A3:A10))
で済ませて、説明しやすくなりました
感謝いたします
ほんとうにありがとうございました

お礼日時:2004/08/25 20:09

作業列を使いますが、例えば下記の方法ではいかがでしょうか。



B列の3行目から100行目までに住所が入っているとして、B101は空白、またB2には「住所」という見出しが入っており、B1にオートフィルタで抽出条件に指定した文字を表示させるとした場合、

1)A列を作業列として、A3からA101(データ入力行より1つ下)までに、1~99の通し番号を入力しておく。
2)B1に =VLOOKUP(SUBTOTAL(4,A3:A101),A3:B101,2) と入力。
3)B2からB100までを選択してオートフィルタ

とすると、オートフィルタをかけたときに、抽出条件に指定した住所がB1に表示されると思います。A列を見せたくなければ、A列を非表示にされても構わないと思います。

なお上記の場合、すべてを表示したときにB1には「0」が表示されますので、それを表示させないためには、

・ツール→オプション→表示タブの「ゼロ値」のチェックを外す
・B101にスペースをあらかじめ入力しておく
・B1の式を
=IF(VLOOKUP(SUBTOTAL(4,A3:A101),A3:B101,2)=0,"",VLOOKUP(SUBTOTAL(4,A3:A101),A3:B101,2))
 とする
 
などの方法を使われると良いと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございました
参考にさせていただきます
渡す相手に説明しなくてはならないため
式が簡素な#3の方の方法を取らせていただきました

お礼日時:2004/08/25 20:10

VBAなら可能です



2列目に項目があるシートにおいて
「東京」がA列だとすると
この結果をa1に表示する場合

Range("a60000").Select
Selection.End(xlUp).Select

Range("a1").Value = Selection.Value

で取得できます
どのようなイベントでこれを実行するかは
ご自身のスタイルに合わせれば良いでしょう
また、もうひとつの方位としては
a1セルに東京を含むリストを持った
コンボボックスを配置し
ここからフィルターをかける
プロシージャを実行すればOKです

この回答への補足

早速の回答ありがとうございます

「VBAなら」ということは「VBAでないと」ということですよね?
つくったファイルを他の人に渡して作業させる関係で
できればVBAを使わずに済ませたいのです・・・

二つ目の方法をとったとしても
プロシージャでないと無理でしょうか?

補足日時:2004/08/25 14:26
    • good
    • 0

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